如何使用String Buffer来完成
时间: 2024-01-20 09:03:10 浏览: 18
使用StringBuffer类也可以完成这个需求。StringBuffer类是Java中常用的字符串处理类,它可以在原字符串的基础上进行修改,因此适合用来修改文本文件。
下面是一个示例代码:
```java
import java.io.*;
public class ModifyTextFile {
public static void main(String[] args) {
try {
File file = new File("example.txt");
BufferedReader br = new BufferedReader(new FileReader(file));
StringBuffer sb = new StringBuffer();
String line;
int count = 0;
while ((line = br.readLine()) != null && count < 6) {
sb.append(line);
sb.append("\n");
count++;
}
sb.append("This is the new content of the sixth line.\n");
while ((line = br.readLine()) != null) {
sb.append(line);
sb.append("\n");
}
br.close();
BufferedWriter bw = new BufferedWriter(new FileWriter(file));
bw.write(sb.toString());
bw.close();
System.out.println("File content modified successfully!");
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
这段代码使用了StringBuffer类来处理文本文件的内容。它首先遍历前六行,将它们存储到StringBuffer对象中,并在每行后面添加一个换行符。然后,它添加新的内容到第六行,并遍历余下的行,将它们也存储到StringBuffer对象中。最后,它将修改后的内容写入文本文件中。
需要注意的是,使用StringBuffer类时需要逐行读取并逐行处理文件内容。而且需要在修改完成后,将StringBuffer对象转换为String类型,并将其写入文本文件中。
无论是使用BufferedReader类和BufferedWriter类,还是使用StringBuffer类,都需要注意文件的打开和关闭操作,以避免文件资源泄漏。