提问人:Martin Specker 提问时间:12/7/2022 最后编辑:AbraMartin Specker 更新时间:12/7/2022 访问量:39
未找到行 Exception in java with Scanner
No line found Exception in java with Scanner
问:
我想从.txt文件中逐行读取。但是,当找到该文件时,我无法访问其内容。
import java.io.*;
import java.*;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public static void main(String[] args) {
try {
File myObj = new File("C:\\Daten\\workspaces\\my_file.txt");
System.out.println(myObj);
Scanner myReader = new Scanner(myObj);
System.out.println("test1");
System.out.println(myObj.getName());
String insertInto = "INSERT INTO ";
insertInto = insertInto.concat(myObj.getName() +" ( ");
//get header
System.out.println("hast next ?");
System.out.println(myReader.hasNextLine());
String header = myReader.nextLine();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
这会导致以下输出:
C:\Daten\workspaces\my_file.txt
test1
my_file.txt
hast next ?
false
... threw exception
java.util.NoSuchElementException: No line found
at java.util.Scanner.nextLine(Scanner.java:1540)
...
该文件是一个制表符限制的文本文件,我多次重新检查路径:它位于此位置并且不为空。
在这一点上,我真的不知道问题出在哪里了,我觉得我在错误的地方搜索,但我不知道我应该在哪里搜索。
提前感谢您的回答。
答:
0赞
Martin Specker
12/7/2022
#1
我发现了问题。不知何故,文件已损坏。我尝试了一个新的不同的虚拟文件,它可以读取这些行。因此,我只需将my_file.txt的内容复制到新.txt中即可,然后它就起作用了。 不过,我仍然不知道为什么。
PS:谢谢你的帮助袋熊。
评论
hast next ? false
System.out.println(myObj.exists());