C#反序列化XML异常:在 XML文档(0, 0)中有一个错误“缺少根元素”
来源:互联网 发布:jetbrains软件 编辑:程序博客网 时间:2024/05/20 06:50
Q:
在反序列化 Xml 字符串为 Xml 对象时,抛出如下异常。
即在 XML文档(0, 0)中有一个错误:缺少根元素。
A:
首先看下代码:
StringBuilder sb = new StringBuilder();using (MemoryStream stream = new MemoryStream()){ StreamWriter writer = new StreamWriter(stream); writer.Write(sb.ToString().Trim()); writer.Flush(); //stream.Position=0; // or //stream.Seek(0, SeekOrigin.Begin); StreamReader reader = new StreamReader(stream); XmlSerializer xmlSerializer = new XmlSerializer(typeof(T)); object obj = xmlSerializer.Deserialize(reader); reader.Close(); reader.Close(); writer.Close(); writer.Dispose();}
抛出异常是在object obj = xmlSerializer.Deserialize(reader);
这里出现的。
问题在于writer.Write(sb.ToString().Trim());
这里,原因是进行了写入操作,最后流的位置停留在尾部。因此,在反序列化之前将流的位置定位到开始 0 的位置即可。
这里就是在 上面注释的地方。
0 0
- C#反序列化XML异常:在 XML文档(0, 0)中有一个错误“缺少根元素”
- C# xml反序列化
- C#中XML序列化和反序列化初探
- C# 中XML的序列化和反序列化
- C#中使用DataContractSerializer反序列化多级xml
- Xml 反序列化
- xml反序列化
- xml反序列化
- C#实现序列化对象到XML文档与反序列化
- XML序列化与反序列化 整理文档
- XML序列化与反序列化 整理文档
- XML序列化与反序列化 整理文档
- XML序列化与反序列化 整理文档
- 序列化和反序列化xml文档
- xml的反序列化
- C#对象的 Xml序列化与反序列化
- c# XML序列化与反序列化
- c# XML序列化与反序列化
- windows 环境变量
- struts开发步骤
- 滑雪(深搜与动归)
- HDU-1272 小希的迷宫 (并查集)
- 算法概论习题 8.22 NP-完全问题证明
- C#反序列化XML异常:在 XML文档(0, 0)中有一个错误“缺少根元素”
- 【matlab】freqz函数的使用(一)
- Django添加js
- 【论坛项目】简单的论坛小项目-麻雀虽小,五脏俱全
- CV界的明星人物们和他们的主页地址
- Android杂谈(21)+Java随笔(4):注解(下)分析ButterKnife
- C语言main()主函数执行完毕后是否会再执行一段代码
- android studio异常处理之[Error: com.android.ide.common.process.ProcessException]
- 基于ssm框架正式环境echarts图表的使用