I am writing a program where I read data from a file name that the user inputs using a scanner. I am making a new object from each line of the file using the following code:
JavaScript
x
while (scan.hasNextLine()) {
String line = scan.nextLine();
String[] parts = line.split(" ");
//create new object from parts here
}
This works correctly until my file for .txt files where there is no whitespace in between the lines but when there is a blank line in between words it stops working entirely.
Right now it only works on a .txt file set up like this:
JavaScript
line 1
line 2
line 3
I want to set it up to read a file like this:
JavaScript
line 1
line 2
line 3
How can I modify my program to read over a blank line and check if there is text after it?
Advertisement
Answer
You can test the first value in your parts array, which will always exist.
JavaScript
while (scan.hasNextLine()) {
String line = scan.nextLine();
String[] parts = line.split(" ");
if (!parts[0].isEmpty()) {
//create new object from parts here
}
}