手记

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

         

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");	}}


0人推荐
随时随地看视频
慕课网APP