[英]Java Scanner not recognizing lines in file
因此,我正在使用以下内容读取文本文件:
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
String f = "file.txt";
Scanner in = new Scanner(new File(f));
while(in.hasNextLine()){
//code here to make a matrix from the data in the text file
}
现在,此文本文件应创建一个具有48927行(文本文件中的行数)的矩阵。 在第196行,while循环中断。
它曾经是第198行,然后我去除了空白(不是换行符),然后移至196
我看着这两行,它们之间没有什么不同!
扫描仪为什么不将其读取为行?
只是为了给您一些文件内的内容,下面是这些行的样子(195-200):
CRUMBS BAKE SHOP<split>420<split>LEXINGTON AVENUE<split>10017<split>2122970500<split>2010-12-30 00:00:00<split>10.0<split>N<split>MANHATTAN<split>BAKERY
FAITHY'S KITCHEN<split>3907<split>DYRE AVENUE<split>10466<split>7186550780<split>2010-12-03 00:00:00<split>22.0<split>N<split>THE BRONX<split>CARIBBEAN
SIRUYEON<split>150-36<split>NORTHERN BOULEVARD<split>11354<split>7184616677<split>2013-05-07 00:00:00<split>60.0<split>N<split>QUEENS<split>CAFE, COFFEE, TEA
MILON BANGLASESH & INDIAN RESTAURANT<split>93<split>1 AVENUE<split>10003<split>2122284896<split>2013-02-20 00:00:00<split>19.0<split>B<split>BROOKLYN<split>BANGLADESHI
HOLEY CREAM<split>796<split>9 AVENUE<split>10019<split>2122478400<split>2011-07-18 00:00:00<split>16.0<split>B<split>MANHATTAN<split>ICE CREAM, GELATO, YOGURT, ICES
CHOP'T<split>1460<split>BROADWAY<split>10036<split>6465710601<split>2011-10-25 00:00:00<split>nan<split>A<split>MANHATTAN<split>SALADS
注意:最后一行的逗号是整个文本文件中的常用功能
如果我让while循环运行直到出现错误,则在196行(它无法识别的行)出现此错误:
Exception in thread "main" java.util.NoSuchElementException: No line found
at java.util.Scanner.nextLine(Scanner.java:1516)
您真的必须使用Scanner
吗? 尝试将BufferedReader
与FileReader
一起使用。
检查这个
https://forums.oracle.com/message/4631933
[编辑]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.