C# WINFORM ,如何将一个中文字符串转换成UTF-8

举个例子,在以下这个网址输入“中国”,他就会自动把“中国”转换成“%E4%B8%AD%E5%9B%BD”,我想知道的是,在C#WINFORM里,如何将汉字转换成那种形式,... 举个例子,在以下这个网址输入“中国”,他就会自动把“中国”转换成“%E4%B8%AD%E5%9B%BD” ,我想知道的是,在C# WINFORM里,如何将汉字转换成那种形式,比如将“中国”转换成“E4%B8%AD%E5%9B%BD”
我说的是WINFORM ,一楼说的Server.HTMLEncode 是ASP.NET里的吧?
展开
 我来答
Dedicatus545__
推荐于2018-05-17 · TA获得超过239个赞
知道小有建树答主
回答量:86
采纳率:0%
帮助的人:168万
展开全部
using System.Text;

byte[] buffer = Encoding.GetEncoding("utf-8").GetBytes("中国");
string str = "";

foreach (byte b in buffer) str += string.Format("%{0:X}", b);
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
philipli2007
2009-05-07 · 超过12用户采纳过TA的回答
知道答主
回答量:31
采纳率:0%
帮助的人:0
展开全部
private void button1_Click(object sender, EventArgs e)
{
string temp = string.Empty;
UTF8Encoding utf8 = new UTF8Encoding();
byte[] encodedBytes = utf8.GetBytes("中国");
foreach (byte b in encodedBytes)
{
temp+="%"+b.ToString("X");
}
MessageBox.Show(temp);
}
试试吧,应该是你想要的了,或者以下这种形式:
string temp = string.Empty;
byte[] encodedBytes = Encoding.GetEncoding("utf-8").GetBytes("中国");
foreach (byte b in encodedBytes)
{
temp+="%"+b.ToString("X");
}
MessageBox.Show(temp);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zamesking
2009-05-07 · 超过17用户采纳过TA的回答
知道答主
回答量:53
采纳率:0%
帮助的人:51.6万
展开全部
使用 //Byte[] bytes = System.Text.Encoding.UTF8.GetBytes("中国");
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
goldchocobo
2009-05-07 · TA获得超过364个赞
知道小有建树答主
回答量:214
采纳率:100%
帮助的人:91.4万
展开全部
直接引用System.Web
然后用里面的System.Web.Ultility.UrlEncode
有重载,第二个参数可以定义什么样的编码
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ChenJianCHE
2009-05-07 · TA获得超过201个赞
知道小有建树答主
回答量:245
采纳率:100%
帮助的人:236万
展开全部
这个是用 Server.HTMLEncode 编码的~ 解码时用 Server.HTMLDecod

还有 Server.URLEncode 和 Server.URLDecod
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式