我正在处理一个涉及每次调用特定函数increment()
的项目时,我正在编辑文本文件的最后一行。
示例文本文件:
0 0
10 1
50 2
30 3
我的目标是每次调用increment()
时,最后一行中的第一个标记将增加,例如,10。所以调用函数一次就会产生:
0 0
10 1
50 2
40 3
答案 0 :(得分:0)
您可以打开文件并通过将所有文件保存到列表中逐行阅读。然后修改它的最后一个元素并获取前一个值来递增(在你的例子中为30):
List<String> lines = new ArrayList<String>();
try (BufferedReader br = new BufferedReader(new FileReader(file))) { //opening the file
String line;
while ((line = br.readLine()) != null) {
// process the line.
lines.append(line);
}
}
String lastLine = lines.remove(lines.size() - 1);
lastLineTokens = lastLine.split(" ");
String result = String.parseInt(lastLineTokens.get(0)) + " " lastLineTokens.get(1);
lines.append(result); //here's the modified list