【发布时间】:2019-06-16 15:04:06
【问题描述】:
我编写了一段代码,将所有 CSV 文件的内容附加到一个列表中。编译此程序会在 '''Iterator iter = full_files.iterator();''' 行生成“找不到符号”错误
我检查了我的声明,一切似乎都很好。我已经在上一行声明并初始化了 full_files。
public ArrayList<String[]> readCSV(File FDir) throws IOException {
File[] files = FDir.listFiles();
File F = files[0];
ArrayList<String[]> all_list = new ArrayList<>();
ArrayList<String[]> list = new ArrayList<>();
// Creating a file to point to the "Full" directory
File FullDir = new File(F.getParent() + "/Full/");
File[] full_files = FullDir.listFiles();
Iterator<File> iter = full_files.iterator();
// Iterating through the files in "Full"
while(iter.hasNext()) {
File file = iter.next();
if(GetFileExtension.get(file).equals(".csv")) {
list = CSVHandler.readCSV(file);
all_list.addAll(list);
}
}
// Checking if the file outside "Full" is a CSV
if(GetFileExtension.get(F).equals(".csv")) {
list = CSVHandler.readCSV(F);
all_list.addAll(list);
}
return all_list;
}
这是我在编译过程中遇到的错误。
shared/utilities/main.java:82: error: cannot find symbol
Iterator<File> iter = full_files.iterator();
^
symbol: method iterator()
location: variable fast of type File[]
1 error
【问题讨论】:
-
错误说明了一切。您正在尝试对 File[] 类型的变量(即文件数组)调用 iterator()。但是数组没有任何 iterator() 方法。它们只有 Object 的方法和一个长度属性。