找回密码
 立即注册

QQ登录

只需一步,快速开始

SunDream°
社区贡献组   /  发表于:2016-6-15 16:23  /   查看:2984  /  回复:1
本帖最后由 Lenka.Guo 于 2016-6-16 09:04 编辑

using (MemoryStream ms = new MemoryStream())
                        {
                            (OBJReport as SectionReport).SaveLayout(ms);
                            ms.Position = 0;
                            using (StreamReader sr = new StreamReader(ms, Encoding.UTF8))
                            {
                                _dict.Add("CONTENT", sr.ReadToEnd());
                            }

                        }

如上面的一段代码,这一部分是我将SectionReport类型的报表使用对应的方法转换字符流然后会存进数据库中, 现在存储不会报错转换不会报错但是不知道为什么执行这一段后   在数据库中存储的字符变成了<?xml version="1.0" encoding="utf-16"?><ActiveReportsLayout Version="3.2"    一个UFT-16的字符,导致重新读取出来的时候无法转码报错。 是为什么呢?

1 个回复

倒序浏览
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-6-16 09:04:18
沙发
您好,

通过测试将Encoding.UTF8 改成Encoding.Unicode “”StreamReader sr = new StreamReader(ms, Encoding.UTF8)   Encoding.Unicode

评分

参与人数 1满意度 +5 收起 理由
SunDream° + 5 赞一个!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部