15 Files, Input/Output Streams,
NIO and XML Serialization
Objectives
In this chapter you’ll:
Create, read, write and update
Use sequential file processing
to develop a real-world credit-
inquiry program.
Write objects to and read
objects from a file using XML
Self-Review Exercises 2
Self-Review Exercises
15.1 Determine whether each of the following statements is true or false. If false, explain why.
a) You must explicitly create the stream objects System.in, System.out and System.err.
b) When reading data from a file using class Scanner, if you wish to read data in the file mul
tiple times, the file must be closed and reopened to read from the beginning of the file.
c) Files static method exists receives a Path and determines whether it exists (either as
a file or as a directory) on disk.
d) XML files are not human readable in a text editor.
e) An absolute path contains all the directories, starting with the root directory, that lead
f) Class Formatter contains method printf, which enables formatted data to be output
to the screen or to a file.
15.2 Complete the following tasks, assuming that each applies to the same program:
a) Write a statement that opens file “oldmast.txt” for input—use Scanner variable in-
OldMaster.
b) Write a statement that opens file “trans.txt” for input—use Scanner variable in-
Transaction.
c) Write a statement that opens file “newmast.txt” for output (and creation)—use for-
matter variable outNewMaster.
d) Write the statements needed to read a record from the file “oldmast.txt”. Use the data
to create an object of class Account—use Scanner variable inOldMaster. Assume that
class Account is the same as the Account class in Fig. 15.9.
e) Write the statements needed to read a record from the file “trans.txt”. The record is
an object of class TransactionRecord—use Scanner variable inTransaction. Assume
that class TransactionRecord contains method setAccount (which takes an int) to set
the account number and method setAmount (which takes a double) to set the amount
of the transaction.
3Chapter 15 Files, Input/Output Streams, NIO and XML Serialization
f) Write a statement that outputs a record to the file “newmast.txt”. The record is an ob-
ject of type Account—use Formatter variable outNewMaster.
15.3 Write a statement that performs each of the following tasks:
a) Output an Accounts object named accounts using XML serialization and a Buffered-
Writer named writer.
b) Input an XML serialized object into an Accounts object named accounts using a Buff-
eredReader named reader.
Exercises
NOTE: Solutions to the programming exercises are located in the ch15solutions folder.
Each exercise has its own folder named ex15_## where ## is a two-digit number represent-
ing the exercise number. For example, exercise 15.4’s solution is located in the folder
ex15_04.
© 2018 Pearson Education, Inc., 330 Hudson Street, NY NY 10013. All rights reserved.