Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 编辑.txt文件的最后一行_Java_Android - Fatal编程技术网

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