By: Ash Viewed: 639 times Printer Friendly Format
Question: A file is created with the following Code:
1. FileOutputStream fos = new FileOutputStream("datafile");
2. DataOutputstream dos = new DataOutputstream(fos); 3. for(int i=0; i<500; i++)
You would like to write code to read back the data from this file. Which solutions listed below will work? (Choose none, some, or all).
A. Construct a FileInputStream, passing the name of the file. Onto the FileInputStream, chain a DataInputStream, and call its readInt() method.
B. Construct a FileReader, passing the name of the file. Call the file reader's readInt() method.
C. Construct a PipedInputStream, passing the name of the file. Call the piped input stream's readInt() method.
D. Construct a RandomAccessFile, passing the name of the file. Call the random access file's readInt() method.
E. Construct a FileReader, passing the name of the file. Onto the FileReader, chain a DataInputStream, and call its readInt() method.
Answer:A and D are correct. Solution A chains a data input stream onto a file input stream. Solution D simply uses the RandomAccessFile class. B fails because the FileReader class has no readInt() method; readers and writers only handle text. Solution C fails because the PipedInputStream class has nothing to do with file I/O. (Piped inout and output streams are used in inter-thread communication). Solution E fails because you cannot chain a data input stream onto a file reader. Readers read chars, and input streams handle bytes.
Most Viewed Articles (in Certification )
Latest Articles (in Certification)
Comment on this tutorial
- Cloud Computing
- Java Beans
- Mac OS X
- Office 365
- Tech Reviews