Download Free sample of

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Chapter
File I/O
10
 Multiple Choice
1)
An ___________ allows data to flow into your program.
input stream
output stream
file name
all of the above
Answer: A
2)
An ____________ allows data to flow from your program.
input stream
output stream
file name
all of the above
Answer: B
3)
Files whose contents must be handled as sequences of binary digits are called:
text files
ASCII files
binary files
output files
Answer: C
4)
The output stream connected to the computer screen is:
System.exit
System.quit
System.in
System.out
Answer: D
©2013 Pearson Education, Inc. Upper Saddle River, NJ. All Rights Reserved.
1
2
Walter Savitch • Absolute Java 5/e Chapter 10 Test Bank
5)
In Java, when you open a text file you should account for a possible:
FileNotFoundException
FileFullException
FileNotReadyException
all of the above
Answer: A
6)
There are two common classes used for reading from a text file. They are:
PrintWriter and BufferedReader
FileInputStream and Scanner
BufferedReader and Scanner
None of the above
Answer: C
7)
The scanner class has a series of methods that checks to see if there is any more well-formed input
of the appropriate type. These methods are called __________ methods:
nextToken
hasNext
getNext
testNext
Answer: B
8)
All of the following are methods of the Scanner class except:
nextFloat()
next()
useDelimiter()
readLine()
Answer: D
9)
The method _________ reads a single character from an input stream.
readLine()
skip()
read()
close()
Answer: C
©2013 Pearson Education, Inc. Upper Saddle River, NJ. All Rights Reserved.
Full file at http://testbanksinstant.eu/ Test-Bank-for-Absolute-Java,-5thEdition-Walter-Savitch-10)
When the method readLine() tries to read beyond the end of a file, it returns the value of:
1
-1
null
none of the above
Answer: C
11)
A __________ path name gives the path to a file, starting with the directory that the program is in.
relative
descendant
full
complete
Answer: A
12)
The stream that is automatically available to your Java code is:
System.out
System.in
System.err
all of the above
Answer: D
13)
All of the following are methods of the File class except:
exists()
delete()
getDirectory()
getName()
Answer: C
14)
The class ObjectOutputStream contains all of the following methods except:
writeInt()
writeChar()
writeDouble()
println()
Answer: D
download full file at http://testbankinstant.com
4
Walter Savitch • Absolute Java 5/e Chapter 10 Test Bank
15)
The method __________ from the File class forces a physical write to the file of any data that is
buffered.
close()
flush()
writeUTF()
writeObject()
Answer: B
16)
The class ObjectInputStream contains all of the following methods except:
readLine()
readChar()
readObject()
readInt()
Answer: A
17)
The read() method of the class RandomAccessFile returns the type:
byte
int
char
double
Answer: B

True/False
1)
A stream is an object that allows for the flow of data between your program and some I/O device or
some file.
Answer: True
2)
Every input file and every output file used by your program has only one name which is the same
name used by the operating system.
Answer: False
3)
The FileNotFoundException is a descendant of the class IOException.
Answer: True
4)
When your program is finished writing to a file, it should close the stream connected to that file.
Answer: True
5)
Only the classes provided for file output contain a method named close.
Answer: False
©2013 Pearson Education, Inc. Upper Saddle River, NJ. All Rights Reserved.
Full file at http://testbanksinstant.eu/ Test-Bank-for-Absolute-Java,-5thEdition-Walter-Savitch-6)
The methods of the scanner class do not behave the same when reading from a text file as they do
when used to read from the keyboard.
Answer: False
7)
Using BufferedReader to read integers from a file requires the String input to be parsed to an integer
type.
Answer: True
8)
A full path name gives a complete path name, starting from the directory the program is in.
Answer: False
9)
The File class contains methods that allow you to check various properties of a file.
Answer: True
10)
Binary files store data in the same format that is used by any common text editor.
Answer: False
11)
Binary files can be handled more efficiently than text files.
Answer: True
12)
The preferred stream classes for processing binary files are ObjectInputStream and
ObjectOutputStream.
Answer: True

Short Answer/Essay
1)
Explain the differences between a text file, an ASCII file and a binary file.
Answer: Text files are files that appear to contain sequences of characters when viewed in a text
editor or read by a program. Text files are sometimes also called ASCII files because they contain
data encoded using a scheme known as ASCII coding. Files whose contents must be handled as
sequences of binary digits are called binary files.
2)
Write a Java statement to create and open an output stream to a file named autos.txt.
Answer: PrintWriter outputStream = new PrintWriter(new FileOutputStream("autos.txt"));
3)
Explain what happens when an output file is opened in Java.
Answer: In Java, when an output stream is connected to a file, the program always starts with an
empty file. If the file you are trying to connect to exists, the contents of the file are deleted before
the output stream writes new data to the file. If the file you are trying to connect to does not exist,
then a new empty file is created.
download full file at http://testbankinstant.com
6
4)
Walter Savitch • Absolute Java 5/e Chapter 10 Test Bank
Write a Java method that returns a String representing a file name entered by the user. Use the
BufferedReader class to obtain input.
Answer:
public static String getFileName() throws IOException
{
BufferedReader stdin = new BufferedReader(new
InputStreamReader(System.in));
System.out.print("Enter the name of the file to open: ");
String fileName = stdin.readLine();
return fileName.trim();
}
5)
Use the output stream to the file autos.txt created above in number 2 to write the line “Mercedes” to
the file.
Answer: outputStream.println("Mercedes");
6)
What happens when the method close is invoked on a stream?
Answer: When the close method is invoked, the system releases any resources used to connect the
stream to the file and does any other housekeeping that is needed.
7)
Create try and catch block that opens a file named statistics.txt for output. Writes the integers 24,
55, and 76 to the file, and then closes the file.
Answer:
PrintWriter outputStream = null;
try
{
©2013 Pearson Education, Inc. Upper Saddle River, NJ. All Rights Reserved.
Full file at http://testbanksinstant.eu/ Test-Bank-for-Absolute-Java,-5thEdition-Walter-Savitch-outputStream = new PrintWriter(new
FileOutputStream("statistics.txt"));
outputStream.println(24);
outputStream.println(55);
outputStream.println(76);
outputStream.close();
}
catch(FileNotFoundException e)
{
System.out.println("Error opening the file autos.txt");
System.exit(0);
}
8)
Write a Java statement that creates an output stream to append data to a file named autos.txt.
Answer: PrintWriter outputStream = new PrintWriter(new FileOutputStream("autos.txt", true));
9)
Write a Java statement to create an input stream to a file named autos.txt. Use the BufferedReader
class.
Answer: BufferedReader inputStream = new BufferedReader(new FileReader("autos.txt"));
10)
Write a complete Java program using a BufferedReader object that opens a file named autos.txt and
displays each line to the screen.
Answer:
import java.io.BufferedReader;
download full file at http://testbankinstant.com
8
Walter Savitch • Absolute Java 5/e Chapter 10 Test Bank
import java.io.FileReader;
import java.io.FileNotFoundException;
import java.io.IOException;
public class TextDemo
{
public static void main(String args[])
{
BufferedReader inputStream = null;
try
{
inputStream = new BufferedReader(new FileReader("autos.txt"));
String line = inputStream.readLine();
while(line != null)
{
System.out.println(line);
line = inputStream.readLine();
}
©2013 Pearson Education, Inc. Upper Saddle River, NJ. All Rights Reserved.
Full file at http://testbanksinstant.eu/ Test-Bank-for-Absolute-Java,-5thEdition-Walter-Savitch-inputStream.close();
}
catch(FileNotFoundException e)
{
System.out.println("Error opening files.");
}
catch(IOException e)
{
System.out.println("Error reading from file.");
}
}
}
11)
Write a Java statement that creates an output stream to a binary file named statistics.dat.
Answer:
ObjectOutputStream outputStream =
new ObjectOutputStream(new FileOutputStream("statistics.dat"));
12)
Use the output stream created in number 11 above to write the String BBC to the file named
statistics.dat.
Answer: outputStream.writeUTF("BBC");
13)
Write a Java statement to create an input stream to the binary file statistics.dat.
Answer:
download full file at http://testbankinstant.com
10
Walter Savitch • Absolute Java 5/e Chapter 10 Test Bank
ObjectInputStream inputStream =
new ObjectInputStream(new FileInputStream("statistics.dat"));
14)
Write a complete Java program that opens a binary file containing integers and displays the contents
to the screen.
Answer:
import java.io.ObjectInputStream;
import java.io.FileInputStream;
import java.io.EOFException;
import java.io.IOException;
import java.io.FileNotFoundException;
public class BinaryInputDemo
{
public static void main(String args[])
{
try
{
ObjectInputStream inputStream =
new ObjectInputStream(new
©2013 Pearson Education, Inc. Upper Saddle River, NJ. All Rights Reserved.
Full file at http://testbanksinstant.eu/ Test-Bank-for-Absolute-Java,-5thEdition-Walter-Savitch-FileInputStream("statistics.dat"));
int stat = 0;
try
{
while(true)
{
stat = inputStream.readInt();
System.out.println(stat);
}
}
catch(EOFException e)
{
System.out.println("End of file encountered");
}
inputStream.close();
}
catch(FileNotFoundException e)
{
download full file at http://testbankinstant.com
12
Walter Savitch • Absolute Java 5/e Chapter 10 Test Bank
System.out.println("Unable to locate file");
}
catch(IOException e)
{
System.out.println("Unable to read file");
}
}
}
15)
Write a Java statement that creates a stream that provides read/write access to the file named
autos.txt.
Answer: RandomAccessFile ioStream = new RandomAccessFile("autos.txt", "rw");
16)
Write a Java statement to create an input stream to a file named “statistics.dat”.
Answer: Scanner inputStream = new Scanner(new FileReader("statistics.dat"));
17)
Write a complete Java program using a Scanner object that opens a file named autos.txt and displays
each line to the screen.
Answer:
import java.util.*;
import java.io.FileReader;
import java.io.FileNotFoundException;
public class TextDemo
©2013 Pearson Education, Inc. Upper Saddle River, NJ. All Rights Reserved.
Full file at http://testbanksinstant.eu/ Test-Bank-for-Absolute-Java,-5thEdition-Walter-Savitch-{
public static void main(String args[])
{
Scanner inputStream = null;
try
{
inputStream = new Scanner(new FileReader("autos.txt"));
String line = inputStream.nextLine();
while(line != null)
{
System.out.println(line);
line = inputStream.nextLine();
}
inputStream.close();
}
catch(FileNotFoundException e)
{
System.out.println("Error opening files.");
download full file at http://testbankinstant.com
14
Walter Savitch • Absolute Java 5/e Chapter 10 Test Bank
}
}
}
©2013 Pearson Education, Inc. Upper Saddle River, NJ. All Rights Reserved.