zoukankan      html  css  js  c++  java
  • string

    JAVA里面关于byte数组和String之间的转换问题
      引自:http://soniccyj.bokee.com/6175850.html
      JAVA里面关于byte数组和String之间的转换问题
      把byte转化成string,必须经过编码。
      例如下面一个例子:
      import java.io.UnsupportedEncodingException;
      public class test{
      public static void main(String g[]) {
      String s = "12345abcd";
      byte b[] = s.getBytes();
      String t = b.toString();
      System.out.println(t);
      }
      }
      输出字符串的结果和字符串s不一样了.
      经过以下方式转码就可以正确转换了:
      public class test{
      public static void main(String g[]) {
      String s = "12345abcd";
      byte b[] = s.getBytes();
      try {
      String t = new String(b);
      System.out.print(t);
      } catch (Exception e) {
      e.printStackTrace();
      }
      }
      }
      引自:http://topic.csdn.net/t/20050404/10/3906398.html
      String str = "String";
      byte[] byte1 = str.getBytes();
      String str1 = new String(byte1);
      byte[] byte2 = str1.getBytes();
      String str2 = new String(byte2);
      System.out.println("str<<<" + str);
      System.out.println("byte1<<<" + byte1);
      System.out.println("str1<<<" + str1);
      System.out.println("byte2<<<" + byte2);
      System.out.println("str2<<<" + str2);
      -------------------------------------
      输出结果
      str<<<String
      byte1<<<[B@192d342
      str1<<<String
      byte2<<<[B@6b97fd
      str2<<<String
      想请教为什么两个byte输出的不一样呢?
      String str = "String";
      byte[] byte1 = str.getBytes();
      String str1 = new String(byte1);
      byte[] byte2 = str1.getBytes();
      ----------
      注意byte1是str得到的byte数组,而byte2是另一个字符串str1得到的数组
      他们本身也是两个对象
      直接打印实际上调用的是toString()方法,而toString()的默认实现是打印对象类型+hashCode()
      [B表示byte数组
      @表示之后的是地址
      后面跟着的是hashCode,其实就是其虚拟机地址
      所以这个结果也就是顺理成章了.

  • 相关阅读:
    从索罗斯的“暴涨-暴跌”模型,看“房地产泡沫”
    在深圳有娃的家长必须要懂的社保少儿医保,不然亏大了!(收藏)
    深圳楼市2007vs2016
    细论庚金
    Win10无法安装提示磁盘布局不受UEFI固件支持怎样解决
    八字庚金特性
    广东省限价房转让需补70%的溢价
    DBUTIL 调用存储过程例子
    第二届八一杯网络大学生数学竞赛试题
    八一的专属上网导航服务
  • 原文地址:https://www.cnblogs.com/alibabaidu/p/3255230.html
Copyright © 2011-2022 走看看