Java 编辑.txt文件的最后一行
我正在做一个项目,每次我调用一个特定的函数Java 编辑.txt文件的最后一行,java,android,Java,Android,我正在做一个项目,每次我调用一个特定的函数increment(),我都会编辑文本文件的最后一行 示例文本文件: 0 0 10 1 50 2 30 3 我的目标是每次调用increment(),最后一行中的第一个标记都会增加,例如,10。因此,调用函数一次将产生: 0 0 10 1 50 2 40 3 通过将所有文件保存到列表中,可以打开文件并逐行读取。然后修改其最后一个元素,并将上一个值设置为增量(示例中为30): List line=new ArrayList(); 尝试(Buffered
increment()
,我都会编辑文本文件的最后一行
示例文本文件:
0 0
10 1
50 2
30 3
我的目标是每次调用increment()
,最后一行中的第一个标记都会增加,例如,10。因此,调用函数一次将产生:
0 0
10 1
50 2
40 3
通过将所有文件保存到列表中,可以打开文件并逐行读取。然后修改其最后一个元素,并将上一个值设置为增量(示例中为30):
List line=new ArrayList();
尝试(BufferedReader br=new BufferedReader(new FileReader(file)){//打开文件
弦线;
而((line=br.readLine())!=null){
//处理生产线。
行。追加(行);
}
}
字符串lastLine=lines.remove(lines.size()-1);
lastLineTokens=lastLine.split(“”);
字符串结果=String.parseInt(lastLineTokens.get(0))+“”lastLineTokens.get(1);
行。追加(结果)//这是修改后的列表
请尝试编写一些代码,然后回来问一个具体问题,说明为什么该代码没有按照您的预期运行。
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