`

GBK内码字符串转Unicode字符串

    博客分类:
  • Java
阅读更多

最近要做一下接口程序,客户通过http传过来的内容是转化成了GBK内码的字符串。

如:"B2E2CAD4",是汉字“测试”的GBK内码表示需要在java端将其还原为原来的内容。

 

google后发现网上很多方法都是误人子弟,张冠李戴,于是只好DIY。不敢独享,公布如下:

 

/**
	 * Created on 2010-04-16
	 * @author yangguo
	 * @param isn	GBK 内码字符串
	 * @return		
	 */
	private static String gbk2Unicode(String isn) {
		byte[] bytes = new byte[isn.length()/2];
		for(int i = 0,j = 0 ;i < isn.length() ; i += 2,j++){
			bytes[j] = Integer.decode("0X" + isn.substring(i, i+2)).byteValue();
		}
		try {
			return new String(bytes,"gbk");
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
			return isn;
			
		}
	}

 

 

附件附送一个生成GBK内码的方法和测试代码。

0
0
分享到:
评论

相关推荐

    汉字与GBK内码互转工具(支持批量转换)

    《汉字与GBK内码互转工具详解及其实现原理》 在信息技术领域,字符编码是数据处理中的基础,尤其在中文环境下,理解汉字与内码的转换至关重要。GBK内码,全称为“国标扩展码”(GBK,GuanBiao KaiXin),是中国大陆...

    字符串与其机内码的转换

    理解字符串与机内码的转换对于编程和数据处理至关重要。 ASCII码(美国标准信息交换代码)是最基础的字符编码方式,它定义了128个不同的字符,包括英文大小写字母、数字、标点符号和一些控制字符。每个ASCII字符都...

    Qt中的字符编码转换:UTF8、Unicode、GBK、ASCII、16进制字符、16进制数值

    但如果需要,可以使用`QString::toUtf8()`将Unicode字符串转换为UTF-8字节序列。 5. **16进制数值转换**:在串口通信中,可能需要将接收到的16进制数值转换为字符或字符串。例如,函数`QByteArray_to_HexQString`将...

    Delphi—字符串与内码相互转换的小程序

    在Delphi中,处理字符串通常涉及到`String`类型,它实际上是Unicode字符串,使用UTF-16编码。 该程序包含以下主要组成部分: 1. **用户界面**:一个窗体(Form)是用户与应用程序交互的界面,用户可以在此输入文本...

    VB字符串处理(unicode、UTF)

    例如,`StrConv("Unicode字符串", vbFromUnicode)`会将Unicode字符串转换为系统的默认编码。 `Win32 API Programming with Visual Basic.txt`这个文件可能包含更深入的关于如何使用Win32 API在VB中进行字符串处理的...

    GBK转UTF C语言 单片机

    UTF-8(Unicode Transformation Format - 8 bit)是一种变长的Unicode编码方式,它将Unicode字符集中的每个字符用1到4个字节来表示。UTF-8的最大优点是与ASCII兼容,这意味着英文和其他使用ASCII编码的字符在UTF-8下...

    utf8.rar_UTF8_UTF8-gb_big5_delphi_utf8 decode_字符串 转换

    描述进一步说明了该函数的作用,即把字符串转换为UTF8格式,并且以十六进制的内码形式表示。 在IT领域,字符编码是非常关键的一部分,特别是在多语言环境下,不同编码标准的互转经常需要。UTF8是一种广泛使用的...

    Unicode/GBK/UTF8编码转换工具[含VB.net源码]

    3. **16进制表示**:将得到的字节数组转换为16进制字符串,VB.NET可以使用循环遍历数组并应用`ToString("X2")`方法来实现,这会将每个字节转换为其16进制表示。 4. **字节分隔**:为了方便复制到程序中,可以允许...

    VB6内置的内码转换功能(中文繁简体转换)

    - 接着,如果要转换为繁体,需要使用特定的转换库或者API,如Microsoft的`Uniscribe`库,将Unicode字符串转换为Big5编码的繁体中文。 - 最后,使用`WideCharToMultiByte`将转换后的Unicode字符串转换为目标编码...

    UTF8转GBK C语言 单片机

    - 对于不支持的Unicode字符(GBK编码范围外),可以选择忽略、替换为问号或者其他处理方式。 - 考虑内存限制,可能需要优化查表法,如使用分块查表或动态加载字库。 - 串口通信和TF卡、LCD显示的字符编码一致性问题...

    将字符串转换成gb2312或者utf-8编码的参数(js版)

    `String.prototype.UrlEncode`函数则是用于将字符串转换为UTF-8编码的URL参数,主要利用了JavaScript的内置函数`escape()`,然后对结果进行进一步处理,特别是处理Unicode字符。这个函数的工作原理如下: 1. 先使用`...

    文件编码转换(utf8与gbk相互转换)

    GBK,全称为“汉字内码扩展规范”(Guo Biao Kai Zhan),是在GB2312基础上的扩展,兼容了大部分GB2312字符,同时增加了许多其他汉字、符号和少数民族文字,总共包含约21000个汉字。GBK是单字节编码,但每个字节都带...

    字符内码提取器

    在编程时,我们通常需要将字符串的每个字符转换为其16进制内码,然后以字符串形式存储或传输。有了这个工具,开发者可以快速获取准确的内码值,避免手动计算带来的错误风险。同时,对于那些需要处理大量汉字或者频繁...

    C#汉字与机内码互转

    4. **Char 和 Byte 类型**:在C#中,Char类型表示一个Unicode字符,而Byte类型表示一个字节。在处理汉字与机内码时,这两种类型是基本的数据单元。 现在,我们来看一个简单的C#代码示例,展示如何进行汉字与机内码...

    GB简繁转换,GB与BIG5内码转换

    - **实现思路**:首先将BIG5字符串转换为Unicode字符串,再从Unicode转换为GB编码。 - 使用`MultiByteToWideChar`将BIG5字符串转换为Unicode字符串。 - 使用`WideCharToMultiByte`将Unicode字符串转换为GB编码字符...

    UTF-8toGBK_labview编码gbk_LabVIEWUTF-8_utf-8toGbk_源码.zip

    转换过程包括读取UTF-8编码的字符串,然后根据GBK编码规则重新排列字节,以生成GBK编码的字符串。这个过程中需要注意字节顺序和多字节字符的处理,以确保转换的准确性。 LabVIEW编程环境中,可以创建自定义VI(虚拟...

    汉字内码查询软件

    在VB中编写汉字内码查询软件,开发者通常会利用VB的字符串处理功能和系统API调用来实现汉字与内码之间的转换。 汉字内码主要分为两种:区位码和机内码。区位码是汉字的逻辑位置编码,由两个字节组成,每个字节在01H...

    Combobox和listBox取值 对内码的简单应用

    以下是一个简单的示例,展示了如何从`ComboBox`获取选中项的GBK内码: ```csharp ComboBox myComboBox = new ComboBox(); // 假设myComboBox已填充数据并有选中项 string selectedText = myComboBox.SelectedItem....

    精彩编程与编程技巧-VB6内置的内码转换功能...

    `StrConv`函数用于字符串编码的转换,其语法如下: ```vb StrConv(string, conversion[, LCID]) ``` - **string**:待转换的字符串或字节数组。 - **conversion**:指定转换类型。例如: - `vbFromUnicode`:从...

Global site tag (gtag.js) - Google Analytics