XmlReader:数据无效异常

时间:2016-01-04 15:29:03

标签: c# filestream xmlreader

我试图读取XML文件并得到XmlException:"根级别的数据无效。第1行,第1位和第34位。

以下是XML文件的内容:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<root>
 <Materials override="TRUE">
  <Material name="" diffuse="" />
 </Materials>
</root>

这是我的代码:

using (FileStream fstr = File.OpenRead(sFullPath))
{
  XmlReaderSettings settings = new XmlReaderSettings();
  settings.ConformanceLevel = ConformanceLevel.Document;
  fstr.Position = 0;
  using (XmlReader xmlReader = XmlReader.Create(fstr, settings))
  {                    
     while (xmlReader.Read())
     {

     }
  }
}

调用Read()会引发异常。

我一直在不同的网站上搜索答案,也看过MSDN,但无法解决我的问题。

我的代码取自http://www.codeproject.com/Articles/318876/Using-the-XmlReader-class-with-Csharp,但我也尝试了不同的代码段。

我还在Notepad ++上检查了我的文件编码,尝试了没有BOM的UTF-8和UTF-8,没有做出改变。

我已经坚持了几天,而且我已经没想完了。 谢谢你的帮助!

编辑:删除&#34; ...&#34;在片段中,以避免混淆人。我也试过了:

using (XmlTextReader xmlReader = new XmlTextReader(fstr))

似乎xmlReader.Encoding返回null,而我的文件被编码为UTF-8。

0 个答案:

没有答案