请教页面源代码上是"charset=gb2312",为何GetEncoding("gb2312")仍然读出乱码?谢谢

cs12356 2010-09-26 11:38:29
而用
StreamReader sr = new StreamReader(s, System.Text.Encoding.UTF8);
却可以读出正确的内容

StreamReader sr = new StreamReader(s, System.Text.Encoding.GetEncoding("gb2312"));
读出乱码

请教原因,谢谢

如果无法解决,有什么办法能查询读出的是否为乱码,谢谢!
...全文
327 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
mayuliuze 2010-12-07
  • 打赏
  • 举报
回复
meta是什么
K0528 2010-09-27
  • 打赏
  • 举报
回复
学习一下,呵呵,2楼应该是正解吧
Love_Air523824 2010-09-27
  • 打赏
  • 举报
回复
鸭梨山大帝 2010-09-27
  • 打赏
  • 举报
回复
因为,并不是meta里面写GB2312就表示页面源文件用的就是GB2312,这里只是一种申明,告诉浏览器,使用GB2312解码.

你这种读取方式跟申明无关,跟文件本身的格式有关.

真正的文件保存的格式还要看源文件本身.
兔子-顾问 2010-09-27
  • 打赏
  • 举报
回复
可能页面中的meta写错了。meta描述的是gb2312,但实际生成静态页面时用的utf8。

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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