本人是新手,在WAP工作中,需要转换带中文的数据: byte[] b = new byte[] { (byte) 0xc3, (byte) 0x8f, (byte) 0xc3,
(byte) 0xbb, (byte) 0xc3, (byte) 0x8f, (byte) 0xc2,
(byte) 0xa2, (byte) 0xc3, (byte) 0x92, (byte) 0xc3,
(byte) 0x91, (byte) 0xc3, (byte) 0x89, (byte) 0xc2,
(byte) 0xbe, (byte) 0xc2, (byte) 0xb3, (byte) 0xc3, (byte) 0xbd };
使用如下语句才可正确显示自串"消息已删除":
System.out.println(new String(new String(b,"utf-8").getBytes("iso-8859-1"),"gbk"));
由于本人需要完全用C语言来实现上述字串转换的功能,有几点疑问需要请教大家:
以下为个人的理解,请指正:
1. new String(b,"utf-8")的意思:以UTF-8的编码来解析(而不是编码)字节流 b[] ,相当与对 b[] 进行UTF-8 -> UNICODE 的转化, 对吗? 2. getBytes("iso-8859-1") : 将字串(相当可转化为UNICODE 码) 以ISO-8859-1的编码转化为字符 , 对吗?
3. String(xxx,"gbk") : 将字串转化为GBK编码的字串 ?
(byte) 0xbb, (byte) 0xc3, (byte) 0x8f, (byte) 0xc2,
(byte) 0xa2, (byte) 0xc3, (byte) 0x92, (byte) 0xc3,
(byte) 0x91, (byte) 0xc3, (byte) 0x89, (byte) 0xc2,
(byte) 0xbe, (byte) 0xc2, (byte) 0xb3, (byte) 0xc3, (byte) 0xbd };
使用如下语句才可正确显示自串"消息已删除":
System.out.println(new String(new String(b,"utf-8").getBytes("iso-8859-1"),"gbk"));
由于本人需要完全用C语言来实现上述字串转换的功能,有几点疑问需要请教大家:
以下为个人的理解,请指正:
1. new String(b,"utf-8")的意思:以UTF-8的编码来解析(而不是编码)字节流 b[] ,相当与对 b[] 进行UTF-8 -> UNICODE 的转化, 对吗? 2. getBytes("iso-8859-1") : 将字串(相当可转化为UNICODE 码) 以ISO-8859-1的编码转化为字符 , 对吗?
3. String(xxx,"gbk") : 将字串转化为GBK编码的字串 ?
解决方案 »
- 菜鸟
- JSP页面怎么取后台对象的值
- 整个站点默认禁用Session 而某个页面不禁用的做法 如何实现
- 注册板块,在确认表单的时候,出现异常
- 本地机器作为服务器,上传JSP网页问题
- <<紧急求助>>在jsp中,关于checkbox ,全选,多选以及选中个数的问题~~~~
- 100分求解tomcat+sql2000连接池问题,解决马上给分!高手进来!
- 用jspSmallUpload上传文件后;文件名存在数据库中,文件存在本地一个文件夹下;如何通过从数据库中得到此文件名;来删除此文件啊?
- JAVA实现文件下载,浏览器端得到数据没反应
- JSP应用程序的class是不是都要放在应用程序目录中的Web_INF\classes目录中呢
- java 实现二级域名
- Struts2
new String(byte[] bytes, Charset charset)
通过使用指定的 charset 解码指定的 byte 数组,构造一个新的 String。
getBytes(Charset charset)
使用给定的 charset 将此 String 编码到 byte 序列,并将结果存储到新的 byte 数组。