System.Convert.ToString将汉字转换成utf编码
2006-03-23 08:28
543 查看
我们在编写某些特殊的字符串处理程序的时候,需要获得字符的16进制编码,这个在vb中一般使用asc函数来进行,但是在c#中就没有那么简单。前一阵,为了将url中的汉字转换成utf编码的,我发现可以用System.Convert.ToString这函数来完成这样的操作。
这个函数就是将url中的汉字转换成utf编码:
public string Str2Hex(string strInput)
{
UTF8Encoding utf8=new UTF8Encoding();
string unicodeString=strInput;//strinput就是需要转换的汉字字符串
string str="";
Byte[] encodedBytes=utf8.GetBytes(unicodeString);//转换成数组
for (int i=0;i<(encodedBytes.Length);i++ )
{
str=str+"%25";//因为ReportingService中的特殊要求,需要在每个汉字前增加一个“%25,即%本身的编码”
str=str+System.Convert.ToString(encodedBytes[i],16);//转换成16进制的编码。
}
return str;
}
//这个函数和上面的大同小异,只是直接在汉字中间加上%而不是它的编码
public string StrToHex(string strInput)
{
UTF8Encoding utf8=new UTF8Encoding();
string unicodeString=strInput;
string str="";
Byte[] encodedBytes=utf8.GetBytes(unicodeString);
for (int i=0;i<(encodedBytes.Length);i++ )
{
str=str+"%";
str=str+System.Convert.ToString(encodedBytes[i],16);
}
return str;
}
这个函数就是将url中的汉字转换成utf编码:
public string Str2Hex(string strInput)
{
UTF8Encoding utf8=new UTF8Encoding();
string unicodeString=strInput;//strinput就是需要转换的汉字字符串
string str="";
Byte[] encodedBytes=utf8.GetBytes(unicodeString);//转换成数组
for (int i=0;i<(encodedBytes.Length);i++ )
{
str=str+"%25";//因为ReportingService中的特殊要求,需要在每个汉字前增加一个“%25,即%本身的编码”
str=str+System.Convert.ToString(encodedBytes[i],16);//转换成16进制的编码。
}
return str;
}
//这个函数和上面的大同小异,只是直接在汉字中间加上%而不是它的编码
public string StrToHex(string strInput)
{
UTF8Encoding utf8=new UTF8Encoding();
string unicodeString=strInput;
string str="";
Byte[] encodedBytes=utf8.GetBytes(unicodeString);
for (int i=0;i<(encodedBytes.Length);i++ )
{
str=str+"%";
str=str+System.Convert.ToString(encodedBytes[i],16);
}
return str;
}
相关文章推荐
- 使用System.Convert.ToString将字符串转换成utf16进制编码
- 字符串转换为数字:String:convert a string to int
- 如何将String类型的数组转换成ArrayList(How to convert a string array to arraylist)
- c++ int convert to std::string 转换成std::string
- LINQ to Entity 不识别方法“System.String ToString()”,因此该方法无法转换为存储表达式。
- Linq中int转String(解决LINQ to Entities 不识别方法"System.String ToString()",因此该方法无法转换为存储表达式.)
- 解决svn: Can't convert string from 'UTF-8' to native encoding问题
- 利用 libiconv 实现汉字编码 utf-8 格式 和 gbk格式的相互转换
- 汉字编码(【Unicode】 【UTF-8】 【Unicode与UTF-8之间的转换】 【汉字 Unicode 编码范围】【中文标点Unicode码】【GBK编码】【批量获取汉字UNICODE码】)
- 在linux中svn下载文件时提示svn: Can't convert string from 'UTF-8' to native encoding:
- [iOS]把字符串汉字转换成UTF-8编码
- C#_汉字与GBK,Unicode,UTF-8编码之间的转换
- LinQ to entities 不能识别方法“system.string.ToString(system.String)”.因此该方法无法转换为存储表达式
- ORACLE 汉字转拼音 在数据库编码为UTF8时 正常转换
- iOS把字符串汉字转换成UTF-8编码
- SVN svn: Can't convert string from 'UTF-8' to native encoding:
- C#_汉字与GBK,Unicode,UTF-8编码之间的转换(by daode1212)
- LINQ to Entities 不识别方法“System.String ToString()”,因此该方法无法转换为存储表达式。
- svn: Can't convert string from 'UTF-8' to native encoding 的解决办法
- java中utf-8编码的byte数组转换成String类型代码