我正在尝试使用Java读取和显示特定文件夹中的一组txt文件的内容。我遇到了与BufferedRead类一致的错误。我做错了什么?
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
public class DirectoryShow {
public static void main(String[] args) throws IOException {
File f = new File("D:\\Files"); // current directory
File[] files = f.listFiles();
for (File file : files) {
BufferedReader br = new BufferedReader("D:\\Files");
String line = null;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
System.out.print(" file:");
System.out.println(file.getCanonicalPath());
}
}
}
答案 0 :(得分:2)
有两个错误:
首先是你写的地方
BufferedReader br = new BufferedReader("D:\\Files");
没有指定单个文件;你可能意味着
new BufferedReader(new InputStreamReader(new FileInputStream(file)));
第二个错误是文件夹中的每个文件都不是文件,可以读取等等。在设计良好的应用程序中,你应该检查这些文件。
答案 1 :(得分:1)
public class DirectoryShow {
public static void main(String[] args) throws IOException {
File f = new File("D:\\Files"); // current directory
File[] files = f.listFiles();
for (File file : files) {
BufferedReader br = new BufferedReader(new InputstreamReader(new FileInpupStream(file)));
String line = null;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
br.close();
System.out.print(" file:");
System.out.println(file.getCanonicalPath());
}
}
}