字符集之间转换读取和写入

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字符集之间转换读取和写入相关的知识,希望对你有一定的参考价值。

import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.UnsupportedEncodingException; public class Main_GBK_Trans_UTF8 { public static void main(String[] args) { writeFileUseGBK(); readFileUseGBK(); } public static void writeFileUseGBK() { OutputStreamWriter ow=null; try { // 创建字节流 // OutputStreamWriter 是字符流通向字节流的桥梁 ow=new OutputStreamWriter(new FileOutputStream("E:/gbk.txt"), "GBK"); // 使用GBK编码写入,同时也只能使用GBK格式读取出来 ow.write("你好"); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { if(ow!=null) { try { ow.close(); } catch (IOException e) { e.printStackTrace(); } } } System.out.println("end"); } public static void readFileUseGBK() { InputStreamReader in=null; try { // 创建字节流 // InputStreamReader 是字符流通向字节流的桥梁 // 使用GBK编码写入,同时也只能使用GBK格式读取出来 in=new InputStreamReader(new FileInputStream("E:/gbk.txt"), "GBK"); //in=new InputStreamReader(new FileInputStream("E:/gbk.txt"), "UTF-8"); char[] chs=new char[1024]; int len=-1; while((len=in.read(chs))!=-1) { System.out.println(new String(chs,0,len)); // 输出 // 你好 } } catch (UnsupportedEncodingException e) { e.printStackTrace(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { if(in!=null) { try { in.close(); } catch (IOException e) { e.printStackTrace(); } } } System.out.println("end"); } }


以上是关于字符集之间转换读取和写入的主要内容,如果未能解决你的问题,请参考以下文章

C:线程之间的FIFO,写入和读取字符串

pythhon_如何读取json数据

将列表写入 pandas 数据帧到 csv,从 csv 读取数据帧并再次转换为列表而无需字符串

IO流的练习5 —— 读取文件中的字符串,排序后写入另一文件中

c# 将字符串以二进制形式写入文件

c++和c#之间的共享内存同步