Chapter 2.4.5 – Introduction to File I/O | Introduction to Programming Using Java

Chapter 2.4.5 – Introduction to File I/O | Introduction to Programming Using Java

 

2.4.5 Introduction to File I/O

 

System.out sends its output to the output destination known as “standard output.” But standard output is just one possible output destination. For example, data can be written to a file that is stored on the user’s hard drive. The advantage to this, of course, is that the data is saved in the file even after the program ends, and the user can print the file, email it to someone else, edit it with another program, and so on.

 

Chapter 2.4.5 - Introduction to File I/O | Introduction to Programming Using Java

 

TextIO has the ability to write data to files and to read data from files. When you write output using the put, putln, or putf method in TextIO, the output is sent to the current output destination. By default, the current output destination is standard output. However, TextIO has some subroutines that can be used to change the current output destination. To write to a file named “result.txt”, for example, you would use the statement:

TextIO.writeFile(“result.txt”);

After this statement is executed, any output from TextIO output statements will be sent to the file named “result.txt” instead of to standard output. The file should be created in the same directory that contains the program. Note that if a file with the same name already exists, its previous contents will be erased! In many cases, you want to let the user select the file that will be used for output. The statement

TextIO.writeUserSelectedFile(); will open a typical graphical-user-interface file selection dialog where the user can specify the output file. If you want to go back to sending output to standard output, you can say

TextIO.writeStandardOutput();

You can also specify the input source for TextIO’s various “get” functions. The default input source is standard input. You can use the statement TextIO.readFile(“data.txt”) to read from a file named “data.txt” instead, or you can let the user select the input file by saying TextIO.readUserSelectedFile(), and you can go back to reading from standard input with

TextIO.readStandardInput().

When your program is reading from standard input, the user gets a chance to correct any errors in the input. This is not possible when the program is reading from a file. If illegal data is found when a program tries to read from a file, an error occurs that will crash the program. (Later, we will see that is is possible to “catch” such errors and recover from them.) Errors can also occur, though more rarely, when writing to files.

 

Chapter 2.4.5 - Introduction to File I/O | Introduction to Programming Using Java

 

A complete understanding of file input/output in Java requires a knowledge of object oriented programming. We will return to the topic later, in Chapter 11. The file I/O capabilities in TextIO are rather primitive by comparison. Nevertheless, they are sufficient for many applications, and they will allow you to get some experience with files sooner rather than later.

As a simple example, here is a program that asks the user some questions and outputs the user’s responses to a file named “profile.txt”:

 

Chapter 2.4.5 - Introduction to File I/O | Introduction to Programming Using Java

introduction to file

 

 

 

Read More…

Introduction to Programming Using Java – David J. Eck

Chapter 2 – Names and Things | Introduction to Programming Using Java

Chapter 2.2.1 – Variables | Introduction to Programming Using Java

Chapter 2.3.3 – Introduction to Enums | Introduction to Programming Using Java

Chapter 2.4.4 – Formatted Output | Introduction to Programming Using Java

1 thought on “Chapter 2.4.5 – Introduction to File I/O | Introduction to Programming Using Java”

Leave a Comment