csharp: Converting chinese character to Unicode
原创
©著作权归作者所有:来自51CTO博客作者geovin的原创作品,请联系作者获取转载授权,否则将追究法律责任
Function chinese2unicode(Str)
Dim Str_one:Str_one = ""
Dim Str_unicode:Str_unicode = ""
For i = 1 To Len(Str)
Str_one = Mid(Str, i, 1)
If AscW(Str_one) < 0 or AscW(Str_one) > 255 Then
Str_unicode = Str_unicode & Chr(38)
Str_unicode = Str_unicode & Chr(35)
Str_unicode = Str_unicode & Chr(120)
Str_unicode = Str_unicode & Hex(AscW(Str_one))
Str_unicode = Str_unicode & Chr(59)
Else
Str_unicode = Str_unicode & Str_one
End If
Next
chinese2unicode=Str_unicode
End Function
/// <summary>
/// %26%23x4EB2%3B%26%23x7231%3B%26%23x7684%3B%26%23x4F1A%3B%26%23x5458%3BTeresaLiu%2C%26%23x516D%3B%26%23x798F%3B%26%23x73E0%3B%26%23x5BF6%3B%26%23x6703%3B%26%23x54E1%3B%26%23x5BC6%3B%26%23x78BC%3B%26%23x4FEE%3B%26%23x6539%3B%26%23x9805%3B%26%23x901A%3B%26%23x77E5%3B%26%23xFF1A%3B%26%23x95A3%3B%26%23x4E0B%3B%26%23x5DF2%3B%26%23x6210%3B%26%23x529F%3B%26%23x66F4%3B%26%23x6539%3B%26%23x5BC6%3B%26%23x78BC%3B%26%23xFF0C%3B%26%23x5982%3B%26%23x6709%3B%26%23x67E5%3B%26%23x8A62%3B%26%23xFF0C%3B%26%23x8ACB%3B%26%23x81F4%3B%26%23x96FB%3B%26%23x9999%3B%26%23x6E2F%3B27109368%26%23xFF0F%3B%26%23x4E2D%3B%26%23x570B%3B4008846222
///塗聚文 20140724
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
private string chinese2uncode(string str)
{
string s = "";
string outStr = "";
if (!string.IsNullOrEmpty(str))
{
for (int i = 0; i < str.Length; i++)
{
if (Microsoft.VisualBasic.Strings.AscW(str[i].ToString()) < 0 || Microsoft.VisualBasic.Strings.AscW(str[i].ToString())>255) //如果是中文转换Regex.IsMatch(str[i].ToString(), @"[\u4e00-\u9fa5]")
{
//outStr += "\\u" + ((int)str[i]).ToString("x");
outStr = outStr+(char)38;// "&";//char(38);
outStr = outStr + (char)35;// "#";
outStr = outStr + (char)120;// "x";
outStr = outStr + Microsoft.VisualBasic.Conversion.Hex(Microsoft.VisualBasic.Strings.AscW(str[i].ToString())); //outStr +
outStr = outStr + (char)59;// ";";
//Str_unicode = Str_unicode & Chr(38)
//Str_unicode = Str_unicode & Chr(35)
//Str_unicode = Str_unicode & Chr(120)
//Str_unicode = Str_unicode & Hex(AscW(Str_one))
//Str_unicode = Str_unicode & Chr(59)// ;
}
else
{
outStr += str[i];
}
}
}
s = outStr;
return s;
}