- 浏览: 56225 次
- 性别:
- 来自: 厦门
最新评论
为了避免在浏览器中传输数据的时候出现中文乱码,我们可以将内容进行URL编码,当然也可以将内容进行UNICODE编码。将汉字进行 UNICODE编码,如:“王”编码后就成了“\u738b”,UNICODE字符以\u开始,后面有4个数字或者字母,所有字符都是16进制的数字,每两位表示的256以内的一个数字。而一个汉字是由两个字符组成,于是就很容易理解了,“738b”是两个字符,分别是“73”“8b”。但是在将 UNICODE字符编码的内容转换为汉字的时候,字符是从后面向前处理的,所以,需要把字符按照顺序“8b”“73”进行组合得到汉字。下面是具体的转化代码。
/// <summary> /// 将汉字转换为Unicode /// </summary> /// <param name="text">要转换的字符串</param> /// <returns></returns> public static string GBToUnicode(string text) { byte[] bytes = System.Text.Encoding.Unicode.GetBytes(text); string lowCode = "", temp = ""; for (int i = 0; i < bytes.Length; i++) { if (i % 2 == 0) { temp = System.Convert.ToString(bytes[i], 16);//取出元素4编码内容(两位16进制) if (temp.Length < 2) temp = "0" + temp; } else { string mytemp = Convert.ToString(bytes[i], 16); if (mytemp.Length < 2) mytemp = "0" + mytemp; lowCode = lowCode + @"\u" + mytemp + temp;//取出元素4编码内容(两位16进制) } } return lowCode; } /// <summary> /// 将Unicode转换为汉字 /// </summary> /// <param name="name">要转换的字符串</param> /// <returns></returns> public string UnicodeToGB(string text) { MatchCollection mc = Regex.Matches(text, "([\\w]+)|(\\\\u([\\w]{4}))"); if (mc != null && mc.Count > 0) { StringBuilder sb = new StringBuilder(); foreach (Match m2 in mc) { string v = m2.Value; if (v.StartsWith("http://www.cnblogs.com/xczt/admin/file://u/")) { string word = v.Substring(2); byte[] codes = new byte[2]; int code = Convert.ToInt32(word.Substring(0, 2), 16); int code2 = Convert.ToInt32(word.Substring(2), 16); codes[0] = (byte)code2; codes[1] = (byte)code; sb.Append(Encoding.Unicode.GetString(codes)); } else { sb.Append(v); } } return sb.ToString(); } else { return text; } }
发表评论
-
servlet jsp 的生命周期
2012-02-09 15:20 1481servlet的生命周期分为以下几个步骤, 第一,加载并实例化 ... -
反射内部类
2011-11-25 18:30 955package test; public class ... -
Date和Calendar类
2010-06-23 08:58 8381、具体类(和抽象类相对)java.util.Date 2、 ... -
Maven2和ivy比较
2010-06-22 13:14 1409Maven 2和Ivy常被放在一起对比,但实际上两者是不同 ... -
JAVA连接DB2注意事项
2010-05-15 23:21 1237使用Class.forName("COM.ibm. ... -
JAVA的MD5加密
2010-01-19 20:44 977MD5的全称是Message-Digest ... -
Web.xml的解析
2010-01-18 13:32 1064web.xml元素介绍 web.xml首先是肯定要包含它的 ... -
JAVA多线程
2010-01-18 13:23 772java.lang.Thread 和 java.lang.R ... -
Java常用工具类(字符编码,时间等)
2010-01-09 16:20 1430/** * 将UTF编码的字符串转化为GB2312 ... -
JDBC调用存储过程
2010-01-09 16:17 940call 语法格式{call 存储过程名(参数列表)} ... -
java读取配置文件
2010-01-09 16:11 8791、随机id的产生如何实现 引入如下的包: impo ... -
Eclipse中JVM内存设置
2010-01-09 16:06 660eclipse.ini内存设置 -vmarg ... -
Hibernate 中 执行 原生 SQL 语句
2010-01-09 16:04 3195用hibernate的executeQuery来执行SQL ... -
hibernate完成oracle存储过程(stored procedures)
2010-01-09 15:59 1186import java.sql.CallableState ... -
oracle 下hibernate3.2 sequence generator 生成id的问题
2010-01-09 15:57 1313@SequenceGenerator(name=&q ... -
hibernate三重关联
2009-12-25 12:15 1118------------------------------- ... -
iframe跨域访问cookie、Sessio
2009-12-23 22:20 19731、IE浏览器iframe跨域丢失Session问题 在开发 ... -
拦截系统关闭信号
2009-12-19 21:31 1079在Java窗口程序中按ctrl+c会强行中止Java程序。点击 ...
相关推荐
这个压缩包文件"Unicode编码与汉字互转.rar"显然是一个关于如何在Qt C++环境中处理Unicode编码,特别是涉及到汉字转换的资源集合。让我们深入探讨一下Unicode编码、汉字与Qt C++之间的关系,以及如何进行转换。 ...
本文将详细讨论如何在VB6.0中实现Unicode码与汉字的互转,以及如何处理混合编码的转换。 首先,我们需要理解Unicode的基本概念。Unicode是一个国际标准,为每个字符分配一个唯一的数字,不论这个字符属于哪种语言。...
用这个小工具可以实现汉字与unicode编码互转
在描述中提到的“实现Unicode和汉字的互相转码”,这意味着提供的资源可能是一个工具或者程序,可以将Unicode编码的文本转换为特定的汉字编码,反之亦然。这在处理不同系统间的数据交换时尤其有用,例如,当需要将...
UNICODE 和 GB 编码是两种常见的字符编码标准,它们各自有着不同的特性和应用场景。本资源提供了一组 C 语言的源代码,用于在 UNICODE 和 GB 编码之间进行转换,帮助开发者解决在不同编码系统之间互换数据时遇到的...
excel 公式 自动转换unicode编码为汉字
汉字编码转换工具,实现了汉字与 utf-8 gb2312 unicode 互转,开发者多百多度 qq:547170882
1. **GBK编码**:GBK是中国大陆广泛使用的汉字编码标准,它是GB2312的扩展,兼容GB2312的同时增加了更多的汉字和其他字符,总共包含20902个汉字以及符号。 2. **Unicode**:Unicode是一种国际化的字符集,它试图为...
GBK是中国大陆广泛使用的汉字编码标准,它兼容GB2312,包含约20902个汉字,覆盖了大部分常用汉字。而Unicode是一种国际化的字符集,旨在包含世界上所有语言的字符,其最新版本包含超过140000个代码点。 在C/C++中,...
在IT领域,Unicode汉字互转工具有着重要的地位,它主要处理的是字符编码的问题,特别是汉字在不同系统或平台间的转换。这篇分享的源码是用C#编写的,意在帮助开发者理解和实现汉字与Unicode编码之间的转换。下面将...
Unicode中文互转工具是一款专为处理Unicode编码与中文字符间转换问题而设计的应用程序。Unicode是一种国际标准,它为世界上几乎所有的文字系统提供了一个统一的编码方式,使得跨语言、跨平台的信息处理变得可能。在...
通过以上步骤,我们就能够在C语言中利用编码转换表实现GBK与Unicode的互转。这种方法虽然较为原始,但在某些特定场景下,尤其是资源有限或者对性能要求较高的嵌入式系统中,仍然是一个实用的解决方案。
《中英文与Unicode码互转》是一款非常实用的工具,主要功能是帮助用户将中文和英文字符转换成Unicode编码,反之亦然。Unicode是一种全球通用的字符编码标准,旨在为世界上所有的文字提供一个统一的表示方式,使得...
在“汉字编码资料工具大全”这个压缩包文件中,可能包含了一系列关于字库制作、Unicode与GBK编码转换的教程、软件、参考资料和示例。用户可以从中学习如何使用这些工具,理解编码原理,并进行实际操作。例如,可能会...
在探讨“Unicode编码与汉字的对应关系”这一主题时,我们首先需要理解Unicode编码系统的基本概念及其在现代信息...无论是从事软件开发、网页设计还是数据处理,掌握Unicode与汉字编码的相关知识都是必不可少的技能。
标题中的"unicode和GBK互转源码"指的是实现这种转换的程序代码。通常,这些源码会包含两个主要功能:`unicode_to_gbk`和`gbk_to_unicode`。前者用于将Unicode编码的字符串转换为GBK编码,后者则相反。转换过程中,...
总的来说,理解和掌握Unicode与汉字编码之间的转换是处理多语言网页和文本的关键,这对于开发全球化应用和服务至关重要。同时,实际编码转换的实现需要考虑到各种编码格式、错误处理以及用户体验等因素。通过学习和...
Delphi演示如何实现UniCode编码、汉字的繁简互转功能,同时将字符转换为unicode码值(十六进制): 常用编码: codepage=936 简体中文GBK codepage=950 繁体中文BIG5 codepage=437 美国/加拿大英语 code...