java字符转码的三种方法总结及实例

  

<强> java字符转码:三种方法

  

  


  

  

注:如有问题请留言,
  

  

下面具体的实例
  

  

<强>,方法一:. lang。字符串
  

     //用于解码的构造器:   字符串(byte[]字节,int抵消,int长度字符串charsetName)   字符串(byte[]字节,字符串charsetName)      用于编码的方法:   byte [] getBytes(字符串charsetName)//使用指定字符集进行编码   byte [] getBytes()//使用系统默认字符集进行编码   
           公共空间convertionString()抛出UnsupportedEncodingException {   字符串s="清山”;   byte [] b=s.getBytes (gbk ");//编码   字符串sa=新的字符串(b, gbk ");//解码:用什么字符集编码就用什么字符集解码   System.out.println (sa);      b=sa.getBytes (" utf - 8 ");//编码   sa=新的字符串(b, " utf - 8 ");//解码   System.err.println (sa);   }   之前      

<强>方法二:java.io.InputStreamReader/OutputStreamWriter:桥转换,
  

        包com.qingshan.io;      进口java.io.FileInputStream;   进口java.io.FileOutputStream;   进口java.io.IOException;   进口java.io.InputStream;   进口java.io.InputStreamReader;   进口java.io.OutputStream;   进口java.io.OutputStreamWriter;   进口java.io.UnsupportedEncodingException;/* *   * & lt; pre>   *使用java桥转换:对文件进行转码   * & lt;/pre>   * & lt;人力资源颜色=奥躺弊4? lt;/hr>   * 2012青山组版权所有   * & lt;人力资源颜色=奥躺弊4? lt;/hr>   * @author thetopofqingshan   * @version 1.0.0   * @since JDK 1.5   * @date 2012-4-28   */公开课CharsetConvertion {   私人FileInputStream fis;//文件输入流:读取文件中内容   私人InputStream是;   私人InputStreamReader isr;   私人OutputStream操作系统;   私人OutputStreamWriter osw;//写入   私人char [] ch=new char [1024];   公共空间convertionFile()抛出IOException {=new FileInputStream (“C:/项目进度跟踪. txt ");//文件读取吗   isr=new InputStreamReader (gbk ");//解码   os=new FileOutputStream (“C:/项目进度跟踪_utf - 8. - txt ");//文件输出   osw=new OutputStreamWriter(操作系统," utf - 8 ");//开始编码   char [] c=新char[1024];//缓冲   int长度=0;   而(真){   长度=isr.read (c);   如果(长度==1){   打破;   }   system . out。println(新字符串(c, 0,长度));   osw。写(c、0、长度);   osw.flush ();   }      }      公共空间convertionString()抛出UnsupportedEncodingException {   字符串s="清山集团”;   byte [] b=s.getBytes (gbk ");//编码   字符串sa=新的字符串(b, gbk ");//解码:用什么字符集编码就用什么字符集解码   System.out.println (sa);      b=sa.getBytes (" utf - 8 ");//编码   sa=新的字符串(b, " utf - 8 ");//解码   System.err.println (sa);   }/* *   * & lt; pre>   *关闭所有流   * & lt;/pre>   *   */公共空间close () {   如果(isr !=null) {   尝试{   isr.close ();   }捕捉(IOException e) {   e.printStackTrace ();   }   }   如果(!=null) {   尝试{   is.close ();   }捕捉(IOException e) {//TODO自动生成的catch块   e.printStackTrace ();   }   }      如果(osw !=null) {   尝试{   osw.close ();   }捕捉(IOException e) {//TODO自动生成的catch块   e.printStackTrace ();   }   }      如果(os !=null) {   尝试{   os.close ();   }捕捉(IOException e) {//TODO自动生成的catch块   e.printStackTrace ();   }   }   }/* *   * & lt; pre>   *用io读取文件内容   * & lt;/pre>   *   * @throws IOException   *读取过程中发生错误   *   *//* *   * & lt; pre>   *   * & lt;/pre>   * @param路径   * @param字符集   * @throws IOException   *   */公共空间读取(字符串,字符串字符集)抛出IOException {   fis=new FileInputStream(路径);   isr=new InputStreamReader (fis、字符集);   而(fis.available()在0){   int长度=isr.read (ch);   system . out。println(新的字符串(ch));   }   }         公共静态void main (String [] args) {   尝试{   CharsetConvertion cc=new CharsetConvertion ();   cc.convertionFile ();   cc.convertionString ();   cc.close ();   }捕捉(IOException e) {   e.printStackTrace ();   }   }   }   

java字符转码的三种方法总结及实例