안녕하세요 저는 버퍼 된 리더를 사용하여 텍스트 파일을 읽고 텍스트 파일의 줄 수를 인쇄하려고했습니다. 내 코드는 내가 이것을 실행하면 목록 라인 0 요소가 있다고java 오류로 파일 읽기
File parent = new File("/Desktop/Test Folder");
File text = new File(parent, "/text.txt");
FileWriter fw;
FileReader fr;
BufferedWriter write;
BufferedReader read;
if (!parent.exists()) {
parent.mkdir();
}
try {
text.createNewFile();
} catch (Exception ex) {
System.err.println("Error creating file");
}
try {
fw = new FileWriter(text);
fr = new FileReader(text);
write = new BufferedWriter(fw);
read = new BufferedReader(fr);
} catch (Exception ex) {
System.err.println("Error trying to write or read file");
}
System.out.println("Writing to file...");
try {
write.write("String number one.\n");
write.write("String number two.\n");
List<String> lines = new LinkedList<String>();
String line = read.readLine();
while (line != null) {
lines.add(line);
line = read.readLine();
}
System.out.printf("Number of lines is %d.\n", lines.size());
write.flush();
write.close();
} catch (Exception ex) {
System.err.println("Error writing to file");
}
... 이런 식으로 간다. 어떤 도움이 필요합니까? 나는 어딘가에서 쓸모없는 실수를 했습니까? 아니면 잘못된 방법을 사용하고 있습니까? 나는 아마추어이므로 오류가 확실한 것으로 의심됩니다. 어쨌든, 누군가 나에게 도움을 줄 수 있습니까?
출력을 파일에서 읽기 전에 flush()해야합니다. –