【两种方法】.net unicode汉字互相转换

=========================================

//汉字转Unicode编码(ASCII)

private string StringToUnicode(string srcText)

        {

            string dst = "";

            char[] src = srcText.ToCharArray();

            for (int i = ; i < src.Length; i++)

            {

                byte[] bytes = Encoding.Unicode.GetBytes(src[i].ToString());

                string str = @"\u" + bytes[].ToString("X2") + bytes[].ToString("X2");

                dst += str;

            }

            return dst;

        }

//TO汉字 srcText为去除\u之后的4位字符

using System.Globalization;

private string ToCN(string srcText)

        {

            string str = srcText;

            byte[] bytes = new byte[];

            bytes[] = byte.Parse(int.Parse(str.Substring(, ), NumberStyles.HexNumber).ToString());

            bytes[] = byte.Parse(int.Parse(str.Substring(), NumberStyles.HexNumber).ToString());

            return Encoding.Unicode.GetString(bytes);

        }

================================================================
public static string ConvertToGB(string unicodeString)
{
string[] strArray = unicodeString.Split(new string[] { @"u" }, StringSplitOptions.None);
string result = string.Empty;
for (int i = ; i < strArray.Length; i++)
{
if (strArray[i].Trim() == "" || strArray[i].Length < || strArray.Length <= )
{
result += i == ? strArray[i] : @"u" + strArray[i]; continue;
}
for (int j = strArray[i].Length > ? : strArray[i].Length; j >= ; j--)
{
try
{
result += char.ConvertFromUtf32(Convert.ToInt32(strArray[i].Substring(, j), )) + strArray[i].Substring(j);
break;
}
catch
{
continue;
}
}
} return result;
} public static string ConvertToUnicode(string strGB)
{
char[] chs = strGB.ToCharArray(); string result = string.Empty; foreach (char c in chs)
{
result += @"u" + char.ConvertToUtf32(c.ToString(), ).ToString("x");
}
return result;
}
/// <summary>
/// 普通字符串与UniCode字符串间转换
/// </summary>
public static class StringToUniCode
{
/// <summary>
/// 字符串转为UniCode码字符串
/// </summary>
/// <param name="s"></param>
/// <returns></returns>
public static string StringToUnicode(string s)
{
char[] charbuffers = s.ToCharArray();
byte[] buffer;
StringBuilder sb = new StringBuilder();
for (int i = ; i < charbuffers.Length; i++)
{
buffer = System.Text.Encoding.Unicode.GetBytes(charbuffers[i].ToString());
sb.Append(String.Format("//u{0:X2}{1:X2}", buffer[], buffer[]));
}
return sb.ToString();
}
/// <summary>
/// Unicode字符串转为正常字符串
/// </summary>
/// <param name="srcText"></param>
/// <returns></returns>
public static string UnicodeToString(string srcText)
{
string dst = "";
string src = srcText;
int len = srcText.Length / ;
for (int i = ; i <= len - ; i++)
{
string str = "";
str = src.Substring(, ).Substring();
src = src.Substring();
byte[] bytes = new byte[];
bytes[] = byte.Parse(int.Parse(str.Substring(, ), NumberStyles.HexNumber).ToString());
bytes[] = byte.Parse(int.Parse(str.Substring(, ), NumberStyles.HexNumber).ToString());
dst += Encoding.Unicode.GetString(bytes);
}
return dst;
}
}

.net unicode汉字互相转换的更多相关文章

  1. .Net(c#)汉字和Unicode编码互相转换

    {"Tilte": "\u535a\u5ba2\u56ed", "Href": "http://www.cnblogs.com&q ...

  2. .Net(c#)汉字和Unicode编码互相转换实例

    {"name": "\u676d\u5dde", "href": "www.baidu.com"} 经常遇到这样内容的j ...

  3. FATFS外置UNICODE GBK双向转换码表(转)

    源:FATFS外置UNICODE GBK双向转换码表 将UtoG,GtoU双向码表放到存储卡里面实现长文件名,因为FATFS长文件名需要unicode支持, 首先将UtoG.sys,GtoU.sys两 ...

  4. [Python] 中文编码问题:raw_input输入、文件读取、变量比较等str、unicode、utf-8转换问题

    最近研究搜索引擎.知识图谱和Python爬虫比较多,中文乱码问题再次浮现于眼前.虽然市面上讲述中文编码问题的文章数不胜数,同时以前我也讲述过PHP处理数据库服务器中文乱码问题,但是此处还是准备简单做下 ...

  5. java中汉字自动转换成拼音

    java中汉字自动转换成拼音 1.需要下载jar包 pinyin4j.2.5.0.jar ,加入到WEB-INF下的lib里边,右键add to bulid path. 2.[代码]PinYinUti ...

  6. unicode 编码在线转换--javascript

    // unicode 编码在线转换工具--javascript 本人在网上搜索,看到有使用javascript做unicode编码转换的,感觉很好玩,所以拿来使用的. 这个功能有目前测试了两种: 1) ...

  7. OC1_汉字拼音转换 练习

    // // WordManager.h // OC1_汉字拼音转换 // // Created by zhangxueming on 15/4/27. // Copyright (c) 2015年 z ...

  8. Python2.X如何将Unicode中文字符串转换成 string字符串

    Python2.X如何将Unicode中文字符串转换成 string字符串   普通字符串可以用多种方式编码成Unicode字符串,具体要看你究竟选择了哪种编码:unicodestring = u&q ...

  9. 用AutoHotkey做汉字到Unicode字符串的转换

    要把汉字转换为搜的形式,也就是在汉字的Unicode Big Endian编码前面加"&#x",后面加分号.例如""字转换后为"搜" ...

随机推荐

  1. 怎样从外网访问内网微服务Microservices?

    本地部署了一个微服务,只能在局域网内访问,怎样从外网也能访问到本地的微服务呢?本文将介绍具体的实现步骤. 准备工作 部署并启动微服务程序 默认部署的微服务端口是8088. 实现步骤 下载并解压hole ...

  2. 【js】手机浏览器端唤起app,没有app就去下载app 的方法

    这种功能的作用: 1.一般公司有自己的app,而app是需要不断有新用户涌入才能持续运营,达到不错的收入.就需要使用这种方式进行引入新的用户. 2.一些内容在网页端体验不好,或者一些功能需要app内才 ...

  3. pyglet StaticSource

    for i in range(10): self.player2.queue(pyglet.media.StaticSource(pyglet.media.load('2.mp3')))

  4. nginx动静态分离以及配置https(安全组强行切换以及导致的问题解决)

    公司原来的网络采用http/https同时支持的方式,http并不会强制自动跳转到https,最近要求强制切换,导致了一系列问题.趁今天测试完成了,整理如下: 1.要求HTTP自动跳转到HTTPS: ...

  5. 【题解】Luogu P1648 看守

    原题传送门:P1648 看守 这题目让求得的是d维( d <=4 )空间中n个点( 2 <= N <= 1000000 )之间最大的哈曼顿距离 模拟,emm,能拿30分,不错 因为d ...

  6. Hibernate properties文件

    ###################### ### Query Language ### ###################### ## define query language consta ...

  7. 通过shell查找访问日志中访问量最大的ip

    日志格式: /Sep/::: +] /Sep/::: +] /Sep/::: +] - /Sep/::: +] - /Sep/::: +] /Sep/::: +] - /Sep/::: +] /Sep ...

  8. 《学习OpenCV3》第14章课后习题

    1.在一条含有 N 个点的封闭轮廓中,我们可以通过比较每个点与其它点的距离,找出最外层的点.(这个翻译有问题,而且这个问题是实际问题) a.这样一个算法的复杂度是多少? b.怎样用更快的速度完成这个任 ...

  9. 20145208 蔡野 《网络对抗》免考项目 MSF学习

    20145208 蔡野 <网络对抗>免考项目 MSF Exploit模块开发 题目:MSF Exploit模块开发 摘要 本免考项目的目标是通过对msf模块的设计语言--ruby和expl ...

  10. Codeforces 40E Number Table - 组合数学

    题目传送门 传送门I 传送门II 题目大意 给定一个$n\times m$的网格,每个格子上要么填$1$,要么填$-1$,有$k$个位置上的数是已经填好的,其他位置都是空的.问有多少种填法使得任意一行 ...