使用Java修改文件的内容

我想使用Java程序删除文件的某些内容,如下所示。这是在相同文件中替换的写方法,还是应将其复制到另一个文件。

但是它删除了文件的所有内容。

class FileReplace

{

ArrayList<String> lines = new ArrayList<String>();

String line = null;

public void doIt()

{

try

{

File f1 = new File("d:/new folder/t1.htm");

FileReader fr = new FileReader(f1);

BufferedReader br = new BufferedReader(fr);

while (line = br.readLine() != null)

{

if (line.contains("java"))

line = line.replace("java", " ");

lines.add(line);

}

FileWriter fw = new FileWriter(f1);

BufferedWriter out = new BufferedWriter(fw);

out.write(lines.toString());

}

catch (Exception ex)

{

ex.printStackTrace();

}

}

public statc void main(String args[])

{

FileReplace fr = new FileReplace();

fr.doIt();

}

}

回答:

我将从关闭阅读器和刷新书写器开始:

public class FileReplace {

List<String> lines = new ArrayList<String>();

String line = null;

public void doIt() {

try {

File f1 = new File("d:/new folder/t1.htm");

FileReader fr = new FileReader(f1);

BufferedReader br = new BufferedReader(fr);

while ((line = br.readLine()) != null) {

if (line.contains("java"))

line = line.replace("java", " ");

lines.add(line);

}

fr.close();

br.close();

FileWriter fw = new FileWriter(f1);

BufferedWriter out = new BufferedWriter(fw);

for(String s : lines)

out.write(s);

out.flush();

out.close();

} catch (Exception ex) {

ex.printStackTrace();

}

}

public static void main(String args[]) {

FileReplace fr = new FileReplace();

fr.doIt();

}

}

以上是 使用Java修改文件的内容 的全部内容, 来源链接: utcz.com/qa/435237.html

回到顶部