使用FileInputStream读取文件,修改文字,在使用FileOutputStream输出修改文件
时间: 2024-04-30 22:21:27 浏览: 69
可以按照以下步骤来实现:
1. 创建 FileInputStream 对象,用于读取文件内容。
2. 创建一个 byte 数组,用于存储读取到的文件内容。
3. 使用 FileInputStream 的 read 方法,将文件内容读取到 byte 数组中。
4. 对 byte 数组中的内容进行修改。
5. 创建 FileOutputStream 对象,用于将修改后的内容输出到文件。
6. 使用 FileOutputStream 的 write 方法,将修改后的内容写入到文件中。
7. 关闭 FileInputStream 和 FileOutputStream 对象。
以下是示例代码:
```java
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class FileModifyExample {
public static void main(String[] args) {
try {
// 创建 FileInputStream 对象,用于读取文件内容
FileInputStream fis = new FileInputStream("example.txt");
// 创建一个 byte 数组,用于存储读取到的文件内容
byte[] data = new byte[fis.available()];
// 使用 FileInputStream 的 read 方法,将文件内容读取到 byte 数组中
fis.read(data);
// 对 byte 数组中的内容进行修改
String content = new String(data);
content = content.replaceAll("hello", "hi");
data = content.getBytes();
// 创建 FileOutputStream 对象,用于将修改后的内容输出到文件
FileOutputStream fos = new FileOutputStream("example.txt");
// 使用 FileOutputStream 的 write 方法,将修改后的内容写入到文件中
fos.write(data);
// 关闭 FileInputStream 和 FileOutputStream 对象
fis.close();
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
以上代码会将 example.txt 文件中的所有 "hello" 替换为 "hi"。注意,在实际应用中,可能需要处理文件编码、文件读取异常等情况。
阅读全文