刘俊凯 发表于 2022-8-12 01:05:31

文本流和汉字编码

文本流:二进制数据采用InputStream/OutputStream
文本数据采用Reader/Writer
char[] ar = {'a','b','c','d'};
BufferedWriter fw = new BufferedWriter(new FileWriter("b.txt"));
fw.write(ar);
fw.close();
BufferedReader fr = new BufferedReader(new FileReader("b.txt"));
String i = null;
while ((i=fr.readLine()) != null){
    System.out.println(i);
}
fr.close();在这段代码中我们通过FileWriter中wrier函数将char类型数组中的内容写入到指定文件內,
再通过FileReader读取指定文件內的内容读出
 
 
汉字编码:
默认字符集是GBK,将他更改为utf-8或别的字符,运行读写数据会乱码
解决问题:使用InputStreamReader它读取字节,并使用指定的charset其解码为字符
https://img2022.cnblogs.com/blog/2907532/202206/2907532-20220625162621291-1414621310.png
 
 
InputStreamReader bis = new InputStreamReader(new FileInputStream("c.txt"), "UTF-8");
      int i;
      while ((i=bis.read())!=-1){
            System.out.println((char)i);
      }
      bis.close();在这段代码中我们通过在创建FileInputStream后面,添加编码格式用来表示将其解码为字符<br><br>搜索
复制<br><br>免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: 文本流和汉字编码