问题描述
本人在做个项目,由于历史原因,发送方网站的字符集是big5,现在向一.net(unicode)做的网站提交繁体中文数据,.net网站如何能够正常显示其提交过来的繁体字
解决方案
解决方案二:
unicode是什么意思?utf8?utf-8本来就能够显示繁体啊,只是你接收的时候要用big5接收而已所以你的问题应该归纳为charset为big5的网站向uft-8网站提交数据,如何保证正确接收与显示好吧,问题来了,你是怎么提交的?
解决方案三:
引用1楼starfd的回复:
unicode是什么意思?utf8?utf-8本来就能够显示繁体啊,只是你接收的时候要用big5接收而已所以你的问题应该归纳为charset为big5的网站向uft-8网站提交数据,如何保证正确接收与显示好吧,问题来了,你是怎么提交的?
好普通的热连接<ahref="test.aspx?name=<%=server.urlencode("繁体字")%>">测试</a>这样
解决方案四:
台湾Big5码还有人用
解决方案五:
接收端HttpUtility.UrlDecode("",Encoding.UTF8);
big5站点<ahref="test.aspx?name=<%=HttpUtility.UrlEncode("繁体字",Encoding.UTF8)%>">测试</a>
都指定Utf-8编码
解决方案六:
可惜的是big5的网站是用asp做的...不能用你上面的代码,不过还是很多谢你,我查查asp怎么按utf-8提交
解决方案七:
接收的地方可以试试Encoding.GetEncoding(950).GetString(byte[])
解决方案八:
还有点补充的是big5用到com,返回的数据时big5的,所以asp页面上是指定成big5...
解决方案九:
引用6楼shingoscar的回复:
接收的地方可以试试Encoding.GetEncoding(950).GetString(byte[])
传入的byte[]那里方便详细点吗,3q
解决方案十:
<ahref="test.aspx?from=big5&name=<%=server.urlencode("繁体字")%>">测试</a>
Encodingencoding;if(Request.QueryString["from"]=="big5"){encoding=Encoding.GetEncoding("big5");}else{encoding=Encoding.UTF8;}stringa=HttpUtility.UrlDecode(Request.QueryString["name"],encoding);
解决方案十一:
Quote: 引用9楼starfd的回复:
这是代码结果截的图
解决方案十二:
不好意思,提交页没截到最新的,现在补下提交页的代码
解决方案十三:
那你不要判断直接试试utf-8呢,不知道你那个到底默认是什么编码啊
解决方案十四:
试过不加判断直接用utf-8或big5,同样显示不出繁体字,接受的网站编码是utf-8的,如下图
解决方案十五:
先明确一个问题:Unicode是微软主导的字符集,其ucs-2(旧称codepage936,新称utf-16be)与国标GBK字典对应。与utf-8的单、三字节部分移位兼容Big5是台湾地区官方字符集,现属GBK子集,与GBk字典兼容。旧称codepage950,仍属uca-2的子集Unicode涵盖了全球所有的字符集方案(不然Windows就卖不出去了),自然也就提供有字符集转换的功能你#11已经明确的声明了使用Big5字符集,当然也就是按Big5提交的了你只需要检查一下C#是否自动将其转换成了unicode就行了(没有实际测试不好说),如果没有就自己转换一下
解决方案:
字符集和编码是两回事,只要编码能够容纳字符集就不会乱码,asp.net默认都是utf-8编码的,能够支持多国语言的。时间: 2025-01-21 09:00:54