Reading a (text) data file to read and parse a text file (as in the wireframe data files), the JDK supplied Scanner class is a useful utilityJava Programming

159.235 Assignment 2 Notes

Reading a (text) data file

To read and parse a text file (as in the wireframe data files), the JDK supplied Scanner class is a useful utility:

// Need these imports


import; import java.util.Scanner;


try {


// Instantiate a Scanner for the given File object

Scanner scanner = new Scanner(myFile);


/// code here . . .



// I f you create a Scanner instance , you must handle this exception

catch (FileNotFoundException e) { e.printStackTrace();


To access the next line in the file, simply do:

line = scanner.nextLine();

where line has previously been declared as String.

Given that line is a String, you need to do an appropriate conversion to integer or float- ing point if that’s what you want. You can do this with either Integer.parseInt() or Double.parseDouble(). For example, to read the first line of the wireframe data files:

line = scanner.nextLine();

int numVertices = Integer.parseInt(line);

If a line has multiple data items, you can split the line using a StringTokenizer, which you can access by first importing:

import java.util.StringTokenizer;

So, for example, if the line looked like:

2.31879 -1.29409 -0.673863

Then you can split this line into doubles as follows:

line = scanner.nextLine();

StringTokenizer strtok = new StringTokenizer(line, " t"); x = Double.parseDouble(strtok.nextToken());

y = Double.parseDouble(strtok.nextToken()); z = Double.parseDouble(strtok.nextToken());

A similar procedure would be used if dealing with a line of ints


Instructions Files

Java Programming Experts

Ray Bjork
Java Programming

90 Answers

Neno S.
Java Programming

60 Answers

View More Experts

The ready solutions purchased from Library are already used solutions. Please do not submit them directly as it may lead to plagiarism. Once paid, the solution file download link will be sent to your provided email. Please either use them for learning purpose or re-write them in your own language. In case if you haven't get the email, do let us know via chat support.

Get Free Quote!

253 Experts Online