html页面编码问题

今天在项目中碰到需要把已经编码的html页面通过mvc controller返回到前端页面,已编码的html页面包含类似下面的内容:

<div style="line-height: 150%;text-indent:0pt;"><span class="st1">2018.04.05 16:05 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#33406;&#26143;&#28009;&#21103;&#20027;&#20219;&#21307;&#24072;&#39318;&#27425;&#26597;&#25151;&#35760;&#24405;</span></div>

通过FileInfo读取物理路径的html页面,然后通过FileStream把html页面的内容转换成byte[],开始通过Encoding指定utf-8或gb2312解码byte[],期待得到包含汉字的html页面字符串,但是屡屡失败,最终得到的还是已编码的字符串。最后通过HttpUtility.HtmlDecode(html)得到了解码后的html代码,以目前的情况猜测分析,HttpUtility.HtmlDecode(html)会按照html的编码方式,寻找对应的解码方式来解码。然后把解码后的html返回到前端,让iframe加载,结果html代码中包含的<,>,单引号等转义成了代码,使html代码在浏览器无法渲染,又是一堆乱码,上述通过iframe.src={controll/action}同步请求;最后通过异步请求解决上面问题,iframe.srcdoc=func(),在func()中写异步请求控制器的代码。

转载于:https://www.cnblogs.com/LouisGo/p/9286493.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值