黑马程序员:Java基础总结----编码&解码流

黑马程序员:Java基础总结



编码&解码流

  ASP.Net+Android+IO开发 .Net培训 、期待与您交流!





编码:字符串变成字节数组。

解码:字节数组变成字符串。


String-->byte[];  str.getBytes(charsetName);

byte[] -->String: new String(byte[],charsetName);


byte[]getBytes(String charsetName)
          使用指定的字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
String(byte[] bytes, String charsetName)
          通过使用指定的 charset 解码指定的 byte 数组,构造一个新的 String
UnsupportedEncodingException - 如果指定的字符集不受支持
            String s =  "万琪" ;

              byte [] b1 = s.getBytes( "GBK"  );
            System.  out .println(Arrays.toString(b1));
            
            String s1 =  new  String(b1, "utf-8"  );
            System.  out .println( "s1="  +s1);

            
              //对s1进行iso8859-1编码。
              byte [] b2 = s1.getBytes( "utf-8"  );
            System.  out .println(Arrays.toString(b2));

            String s2 =  new  String(b2, "gbk"  );
            System.  out .println( "s2="  +s2);

InputStreamReader(InputStream in, String charsetName)
          创建使用指定字符集的 InputStreamReader。
OutputStreamWriter(OutputStream out, String charsetName)
          创建使用指定字符集的 OutputStreamWriter。

        public  static  void  readText() throws  IOException
      {
            InputStreamReader isr =  new  InputStreamReader( new  FileInputStream( "utf.txt"  ), "gbk"  );

              char [] buf =  new  char [10];
              int  len = isr.read(buf);

            String str =  new  String(buf,0,len);

            System.  out .println(str);

            isr.close();
      }
        public  static  void  writeText() throws  IOException
      {
            OutputStreamWriter osw =  new  OutputStreamWriter( new  FileOutputStream( "utf.txt"  ), "UTF-8"  );

            osw.write(  "你好" );

            osw.close();
      }







  ASP.Net+Android+IO开发 .Net培训 、期待与您交流!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值