asp.net(C#) 里 把接收到的gbk数据 转为 utf-8

flyso 2012-02-16 05:30:50
地址栏的要接收的gbk数据 n=%d9%f8%d5%fe

怎么把 接收到的gbk数据 转为 utf-8 数据 能存到数据库里,现在存进去的是????
...全文
372 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
机器人 2012-02-17
  • 打赏
  • 举报
回复
你先贴下接受到数据。

如果是你要发送 QueryString 的 Request

还需要用 HttpUtility.UrlEncode("xxxx", System.Text.Encoding.UTF8);
flyso 2012-02-17
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 net_lover 的回复:]

在web.config里面,配置
<globalization requestEncoding="gb2312" responseEncoding="gb2312"/>

,不需任何解密转换,即可
String str = Request.QueryString["n"];
Response.Write(str);
[/Quote]

得到的结果是 �
flyso 2012-02-16
  • 打赏
  • 举报
回复
我这里写的是客户端调用的API,发过来的是GBK数据,要转换成UTF-8的,不是GB2312

我知道php的写法是
mb_convert_encoding(str, "UTF-8", "GBK");

asp.net该怎么写?
孟子E章 2012-02-16
  • 打赏
  • 举报
回复
在web.config里面,配置
<globalization requestEncoding="gb2312" responseEncoding="gb2312"/>

,不需任何解密转换,即可
String str = Request.QueryString["n"];
Response.Write(str);
dustindwind 2012-02-16
  • 打赏
  • 举报
回复
可以用System.Text.Encoding中提供的方法,下面是一个例子:
        static void Main(string[] args)
{
String str = "测试数据";
Encoding gb2312 = Encoding.GetEncoding("GB2312");
Byte[] gb2312Bytes = gb2312.GetBytes(str);

// Test starts: GB2312 bytes are what you have now
Console.WriteLine("============= GB2312 bytes ================");
foreach (Byte b in gb2312Bytes)
{
Console.Write("{0:x} ", b);
}
Console.WriteLine();
Console.WriteLine("===========================================");

String str1 = gb2312.GetString(gb2312Bytes);
//Console.WriteLine(str1);
Byte[] utf8Bytes = Encoding.UTF8.GetBytes(str1);

// Test result: UTF-8 bytes are what you want
Console.WriteLine("============= UTF-8 bytes =================");
foreach (Byte b in utf8Bytes)
{
Console.Write("{0:x} ", b);
}
Console.WriteLine();
Console.WriteLine("===========================================");
Console.ReadLine();
}

程序输出结果:
============= GB2312 bytes ================
b2 e2 ca d4 ca fd be dd
===========================================
============= UTF-8 bytes =================
e6 b5 8b e8 af 95 e6 95 b0 e6 8d ae
===========================================

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧