Reading & Writing Files
Reading & Writing Files
This section of our 1000+ Java MCQs focuses on reading & writing files in Java
Programming Language.
Answer: b
Explanation: None.
2. Which of these exception is thrown in cases when the file specified for writing
is not found?
a) IOException
b) FileException
c) FileNotFoundException
d) FileInputException
View Answer
Answer: c
Explanation: In cases when the file specified is not found, then
FileNotFoundException is thrown by java run-time system, earlier versions of java
used to throw IOException but after Java 2.0 they throw FileNotFoundException.
3. Which of these methods are used to read in from file?
a) get()
b) read()
c) scan()
d) readFileInput()
View Answer
Answer: b
Explanation: Each time read() is called, it reads a single byte from the file and
returns the byte as an integer value. read() returns -1 when the end of the file is
encountered.
4. Which of these values is returned by read() method is end of file (EOF) is
encountered?
a) 0
b) 1
c) -1
d) Null
View Answer
Answer: c
Explanation: Each time read() is called, it reads a single byte from the file and
returns the byte as an integer value. read() returns -1 when the end of the file is
encountered.
5. Which of these exception is thrown by close() and read() methods?
a) IOException
b) FileException
c) FileNotFoundException
d) FileInputOutputException
View Answer
Answer: a
Explanation: Both close() and read() method throw IOException.
6. Which of these methods is used to write() into a file?
a) put()
b) putFile()
c) write()
d) writeFile()
View Answer
Answer: c
Explanation: None.
7. What will be the output of the following Java program?
import java.io.*;
class filesinputoutput
{
public static void main(String args[])
{
InputStream obj = new FileInputStream("inputoutput.java");
System.out.print(obj.available());
}
}
Note: inputoutput.java is stored in the disk.
a) true
b) false
c) prints number of bytes in file
d) prints number of characters in the file
View Answer
Answer: c
Explanation: obj.available() returns the number of bytes.
Output:
$ javac filesinputoutput.java
$ java filesinputoutput
1422
(Output will be different in your case)
8. What will be the output of the following Java program?
advertisement
import java.io.*;
public class filesinputoutput
{
public static void main(String[] args)
{
String obj = "abc";
byte b[] = obj.getBytes();
ByteArrayInputStream obj1 = new ByteArrayInputStream(b);
for (int i = 0; i < 2; ++ i)
{
int c;
while((c = obj1.read()) != -1)
{
if(i == 0)
{
System.out.print(Character.toUpperCase((char)c));
obj2.write(1);
}
}
System.out.print(obj2);
}
}
}
a) AaBaCa
b) ABCaaa
c) AaaBaaCaa
d) AaBaaCaaa
View Answer
Answer: d
Explanation: None.
Output:
$ javac filesinputoutput.java
$ java filesinputoutput
AaBaaCaaa
9. What will be the output of the following Java program?
import java.io.*;
class Chararrayinput
{
public static void main(String[] args)
{
String obj = "abcdef";
int length = obj.length();
char c[] = new char[length];
obj.getChars(0, length, c, 0);
CharArrayReader input1 = new CharArrayReader(c);
CharArrayReader input2 = new CharArrayReader(c, 0, 3);
int i;
try
{
while((i = input2.read()) != -1)
{
System.out.print((char)i);
}
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
a) abc
b) abcd
c) abcde
d) abcdef
View Answer
Answer: a
Explanation: None.
Output:
$ javac Chararrayinput.java
$ java Chararrayinput
abc
10. What will be the output of the following Java program?
import java.io.*;
class Chararrayinput
{
public static void main(String[] args)
{
String obj = "abcdefgh";
int length = obj.length();
char c[] = new char[length];
obj.getChars(0, length, c, 0);
CharArrayReader input1 = new CharArrayReader(c);
CharArrayReader input2 = new CharArrayReader(c, 1, 4);
int i;
int j;
try
{
while((i = input1.read()) == (j = input2.read()))
{
System.out.print((char)i);
}
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
a) abc
b) abcd
c) abcde
d) none of the mentioned
View Answer
Answer: d
Explanation: No output is printed. CharArrayReader object input1 contains string
�abcdefgh� whereas object input2 contains string �bcde�, when
while((i=input1.read())==(j=input2.read())) is executed the starting character of
each object is compared since they are unequal control comes out of loop and
nothing is printed on the screen.
Output:
$ javac Chararrayinput.java
$ java Chararrayinput