io如何编辑Java I/O文件中的特定单词
因此,我试图修改文本文件中的一行,但当我输入新值并打印结果时,它会在底部打印一个全新的行,就像它是最后一行一样,而不是替换我要替换的行
try {
LineNumberReader readers = new LineNumberReader(new InputStreamReader(new FileInputStream(file), "UTF-8"));
PrintWriter output = new PrintWriter(new FileOutputStream(file, true));
boolean finder = false;
String oldContent = "";
while((target = readers.readLine()) != null)
{
if(target.contains(CL.getID()))
{
finder = true;
target = readers.readLine() + 1;
System.out.println("Escriba el Nuevo presupuesto");
CL.setPresupuesto(reader.next());
output.write("Presupuesto: " + CL.getID() + "$");
System.out.println("Nuevo Presupuesto");
output.close();
readers.close();
break;
}
}
if(finder == false)
{
System.out.println("ID no encontrado!!");
}
}catch(IOException ex) {
}
# 1 楼答案
我不认为有任何方法可以删除原始文件中的特定行。你可以试着创建一个新文件,而不需要特定的行。这将创建一个新文件,但可以达到这个目的