Gua*_*ang 1 java file-io bufferedreader
我正在尝试学习如何使用文本文件中的逐行读取.即使我将txt文件放在同一个src中,控制台也始终将错误显示为 - No such file or directory.
public class ddd {
public static void main(String[] args) {
FileInputStream fis = null;
BufferedReader reader = null;
try {
fis = new FileInputStream("/dd/src/com/dd/input.txt");
reader = new BufferedReader(new InputStreamReader(fis));
System.out
.println("Reading File line by line using BufferedReader");
String line = reader.readLine();
while (line != null) {
System.out.println(line);
line = reader.readLine();
}
} catch (Exception e) {
System.out.println(e.getMessage());
} finally {
try {
reader.close();
fis.close();
} catch (IOException e) {
System.out.println(e.getMessage());
}
}
}
Run Code Online (Sandbox Code Playgroud)
}
问题可能出在这里:
"/dd/src/com/dd/input.txt"
Run Code Online (Sandbox Code Playgroud)
至少在Linux上,这将是一条绝对的道路.您可能想要的是相对于项目根目录的路径:
"src/com/dd/input.txt"
Run Code Online (Sandbox Code Playgroud)
或者,如果要将此文件打包到程序中,请使用资源流而不是raw FileInputStream:
InputStream is = ddd.class.getResourceAsStream("input.txt");
Run Code Online (Sandbox Code Playgroud)