java文件写入乱码怎么办
匿名提问者2023-09-25
java文件写入乱码怎么办
推荐答案
使用字节流而不是字符流来处理文件。字节流不会对文件内容进行字符编码转换,它们会直接处理字节数据。
import java.io.*;
public class ByteStreamExample {
public static void main(String[] args) {
try {
// 读取文件
FileInputStream inputStream = new FileInputStream("input.txt");
byte[] buffer = new byte[1024];
int bytesRead;
while ((bytesRead = inputStream.read(buffer)) != -1) {
System.out.write(buffer, 0, bytesRead);
}
inputStream.close();
// 写入文件
FileOutputStream outputStream = new FileOutputStream("output.txt");
String text = "你好,世界!";
byte[] bytes = text.getBytes("UTF-8");
outputStream.write(bytes);
outputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
在上面的示例中,我们使用了字节流来读取和写入文件,并明确指定了字符编码为UTF-8。这样可以确保文件内容不会受到字符编码的影响,从而避免乱码问题。