A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王利强 中级黑马   /  2012-3-15 14:55  /  1551 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

字符串和字节数组在转换过程中,是可以指定编码表的。这句话什么意思,毕老师也没有演示下

4 个回复

倒序浏览
字符串变成字节数组string.getByte();
字节数组变成字符串:new String(byte[])
回复 使用道具 举报
我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,
如何输出一个某种编码的字符串? :具体如下:
Public String translate (String str) {
   String tempStr = "";
   try {
      //new String(str.getBytes(“用某种编码方式解码”,”用某种编码方式编码”))
     tempStr = new String(str.getBytes("ISO-8859-1"), "GBK");
     tempStr = tempStr.trim();
   } catch (Exception e) {
     System.err.println(e.getMessage());
   }
   return tempStr;
}
回复 使用道具 举报
String里有个方法 getBytes(String Charset) 参数里可以指定要采用的编码的字符集
String 还有个构造方法 String(byte[] bytes,String Charset)可以用指定的用来解码的字符集
回复 使用道具 举报
文件在内存或硬盘中都是以二进制形式存储的。我们之所以能看到txt文件中的字符是因为我们用记事本打开txt文件时,记事本用对应的编码表把原始的二进制数据查表转换成了对应的字符,显示了出来
编码表就是字符和二进制之间的对应关系。字节数组里存的就是二进制数,你用不同的编码表来解码其中的数据,结果会不一样
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马