我的部分作业。 我编写了一个方法将所有单词拆分为ArrayList。从给定项目目录中的所有文件中获取单词。 不幸的是有时会跳过行...我希望找到错误。请帮忙。 要指定:文件是7个“单词”,每行都有制表符。
.num2 span
答案 0 :(得分:1)
我个人没有太多使用过扫描仪,所以我无法立即发现问题。但是这里有一些使用缓冲文件输入流的旧代码,我已经将您的特定位添加到:
public TravelData(File dataDir) {
File[] listOfFiles = dataDir.listFiles();
for (int i = 0; i < listOfFiles.length; i++) {
if (listOfFiles[i].isFile()) {
InputStream inputStream = null;
BufferedReader buffReader = null;
try {
inputStream = new FileInputStream(listOfFiles[i]);
buffReader = new BufferedReader(new InputStreamReader(inputStream));
String fileLine = buffReader.readLine();
while(fileLine != null) {
ArrayList<String> line = new ArrayList<String>();
for(String value: fileLine.split("\t")) {
line.add(value);
}
lineConverter(line, dbDate);
fileLine = buffReader.readLine();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if(buffReader != null) try { buffReader.close(); } catch (IOException e) { }
if(inputStream != null) try { inputStream.close(); } catch (IOException e) { }
}
}
}
}