欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

c#中文转unicode字符示例分享

程序员文章站 2024-02-24 17:39:01
复制代码 代码如下://可以包括其他字符 public string uncode(string str) { string outstr = ""; regex reg...

复制代码 代码如下:

//可以包括其他字符
public string uncode(string str)
{
string outstr = "";
regex reg = new regex(@"(?i)//u([0-9a-f]{4})");
outstr = reg.replace(str, delegate(match m1)
{
return ((char)convert.toint32(m1.groups[1].value, 16)).tostring();
});
return outstr;
}

//中文转为unicode字符

string str = "中文";
string outstr = "";
if (!string.isnullorempty(str))
{
for (int i = 0; i < str.length; i++)
{
//将中文字符转为10进制整数,然后转为16进制unicode字符
outstr += "//u" + ((int)str[i]).tostring("x");
}
}

//unicode字符转为中文

string str = "//u4e2d//u6587";
string outstr = "";
if (!string.isnullorempty(str))
{
string[] strlist = str.replace("//","").split('u');
try
{
for (int i = 1; i < strlist.length; i++)
{
//将unicode字符转为10进制整数,然后转为char中文字符
outstr += (char)int.parse(strlist[i], system.globalization.numberstyles.hexnumber);
}
}
catch (formatexception ex)
{
outstr = ex.message;
}
}