`
- 浏览:
767448 次
- 性别:
- 来自:
上海
-
String newStr = new String(oldStr.getBytes(), "UTF-8");
java中的String类是按照unicode进行编码的,当使用String(byte[] bytes, String encoding)构造字符串时,encoding所指的是bytes中的数据是按照那种方式编码的,而不是最后产生的String是什么编码方式,换句话说,是让系统把bytes中的数据由encoding编码方式转换成unicode编码。如果不指明,bytes的编码方式将由jdk根据操作系统决定。
当我们从文件中读数据时,最好使用InputStream方式,然后采用String(byte[] bytes, String encoding)指明文件的编码方式。不要使用Reader方式,因为Reader方式会自动根据jdk指明的编码方式把文件内容转换成unicode 编码。
当我们从数据库中读文本数据时,采用ResultSet.getBytes()方法取得字节数组,同样采用带编码方式的字符串构造方法即可。
ResultSet rs;
bytep[] bytes = rs.getBytes();
String str = new String(bytes, "gb2312");
不要采取下面的步骤。
ResultSet rs;
String str = rs.getString();
str = new String(str.getBytes("iso8859-1"), "gb2312");
这种编码转换方式效率底。之所以这么做的原因是,ResultSet在getString()方法执行时,默认数据库里的数据编码方式为 iso8859-1。系统会把数据依照iso8859-1的编码方式转换成unicode。使用str.getBytes("iso8859-1")把数据还原,然后利用new String(bytes, "gb2312")把数据从gb2312转换成unicode,中间多了好多步骤。
从HttpRequest中读参数时,利用reqeust.setCharacterEncoding()方法设置编码方式,读出的内容就是正确的了。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
就是从String转换成Unicode和从Unicode转换成String编码转换
android用base64实现文件与string相互转换,绝对好用已测试通过。
Delphi REST 服务器返回UTF16编码转换成正常string示例.rar
1、char[]与string之间的转换 //string 转换成 Char[] string str=hello; char[] arr=str.ToCharArray(); //Char[] 转换成 string string str1 = new ...//string 转换成 byte[] (字符串是用哪种编码生成的byte[]
mac地址的byte和string间的转换java类
CString 可能是 CStringW/CStringA,在与 string 转换时,如果是 CStringW,还涉及编码转换问题。下面以 CStringA 来说明。 1 string to CString CString.format("%s",string.c_str()); CStringA = string.c_...
字符编码检测和转换 附件中:FileEncodeDetector.java 此文件可以检测指定文件的编码格式 public static String getFileEncode(File file) {...} 附件中:FileCharsetConverter.java 此文件可以实现两个编码的相互...
总结了java中常见的utf-8、gbk等进行字符串编码转换
此例子是一个字符串转各种编码的demo,编码格式是已经定义好的,当然你也可以扩充,使用时只需要构造它的对象然后调用对应的转换格式的方法即可,很简单的!
C# string byte数组转换解析 C# string byte数组转换实现的过程是什么呢?C# string byte数组间的转换需要注意什么呢?C# string byte数组间转换所涉及的方法是什么呢?让我们来看看具体的内容: C# string byte数组...
delphi 开发的UTF8 ansistring转换动态库。 通过DELPHI与C++测试。 前面上传的资源未经过仔细验证,有问题,不好意思,重新修正上传
java程序文件字符编码转换器 JLabel labsuffix = new JLabel("指定文件的后缀"); JLabel labCharacter = new JLabel("选择转换方式"); JLabel labfiletext = new JLabel("正在处理"); JTextArea jTextArea = new...
提供给android用户,GBK和汉字互相转换,Unicode和GBK互转。
Java 中颜色的 String 和 Color 对象之间的互相转换 在 Java 中,颜色的表示形式有多种,包括字符串形式和 Color 对象形式。这两种形式可以互相转换,本文将介绍 Java 中颜色的 String 和 Color 对象之间的互相转换...
Delphi XE5 Android手机端转换Ansi字符串,本代码是“浙江-樵夫”开发的一个程序,用来对字符串进行转换
1. Convert ASCII to 7-bit PDU 2. Convert 7-bit, 8-bit and 16-bit PDU to ASCII 3. Decode/Parsing the hexadecimal (PDU) of SMS message 4. Encode ASCII characters to be sent as SMS ready string
C++Builder String,UNICODE,UTF8,ANSI互转的类,类的互相转换
项目中用到蓝牙打印机,但是蓝牙打印机只支持gbk编码,而小程序用的是Unicode,此资源解决了Unicode转gbk编码问题
一.bytes和string区别 ...bytes经过解码decode,转化成string,让我们看,但是注意反编码的编码规则是有范围,\xc8就不是utf8识别的范围; if __name__ == __main__: # 字节对象b b = bshuopython.com
在Java中,字符串的编码转换可以通过getBytes()方法实现,该方法将字符串转换成字节数组,然后通过String构造器将字节数组转换回字符串。但是,这种方法存在一些问题,例如,使用new String(tmp.getBytes("GBK"), ...