我在使用XmlDocument.LoadXml时遇到了一个问题。
应用程序崩溃,出现以下错误:
“根级别的数据无效。行1,位置1”
在检查了XML并且没有发现任何问题之后,我用谷歌搜索了一下,发现了一个使用XmlDocument.Load而不是XmlDocument.LoadXml的提示。
我试过了,它工作得很好。
我的问题是:这两种方法之间有什么区别,是什么原因导致其中一种方法工作,另一种方法失败?
发布于 2009-11-02 19:20:42
XmlDocument.Load用于从流、TextReader、路径/URL或XmlReader加载XML。XmlDocument.LoadXml用于加载字符串中包含的XML。
它们是从根本上不同的加载XML的方法,具体取决于XML实际存储的位置。因此,听起来您使用了错误的方法来定位XML的位置。
发布于 2009-11-02 19:20:53
您是否正在尝试使用XmlDocument.LoadXml并传入文件名?它不会这样做--它假定您传入的字符串是XML。因此,您可以使用:
doc.LoadXml("<root><child /><root>");或
doc.Load("myfile.xml");如果这还不起作用,你能展示一下你失败和正常工作的代码吗?您可以通过不同的方式从使用LoadXml更改为使用Load...
发布于 2009-11-02 19:21:00
Load()从某个源加载,而LoadXml()直接从字符串加载
https://stackoverflow.com/questions/1660676
复制相似问题