我正在尝试使用XMLReader读取XML文件。在我的WPF的解决方案,它是这样的:使用XmlReader读取XML文件(PortableClassLibrary)
public XmlDocument XmlDoc;
XmlReaderSettings settings;
XElement Catalogue;
public void LoadXML(string XML_File)
{
XmlReader reader = XmlReader.Create(XML_File, settings);
XmlDoc.Load(reader);
Catalogue = XElement.Load(new XmlNodeReader(XmlDoc));
}
由于我使用的是便携式类库(Silverlight中,WP8,.NET 4.5,Windows 8中),没有XMLDocument
并没有XmlNodeReader
。我试着做现在这个样子:
public void LoadXML(string XML_File)
{
XmlReader reader = XmlReader.Create();
XDocument XmlDocx = XDocument.Load(reader);
Catalogue = XElement.Load(reader);
}
,但我不知道我怎样才能把字符串XML_File
(其中包含如“users.xml中”)插入读卡器中。 XmlReader.Create()需要作为StreamReader或TextReader的参数,并且当我声明新的StreamReader时,StreamReader需要作为参数Stream ...?所以,是的,我做了这样的
public void LoadXML(string XML_File)
{
//How to put the XML_File in the Stream?
//I could say Stream sra = Stream.Null; - but I still need to put the XML_File string somehow into the reader
Stream s = new Stream();
StreamReader sr = new StreamReader(s);
XmlReader reader = XmlReader.Create(sr);
XDocument XmlDocx = XDocument.Load(reader);
Questions = XElement.Load(reader);
}
我怎样才能把XML_FILE(“users.xml中”)插入读卡器,这样我可以用我的XmlDoc
加载读者?
可移植类库不提供统一的文件I/O,所以您将无法通过此方法访问您的XML文件。查看[PCLStorage](https://pclstorage.codeplex.com/),了解便携式文件I/O方法。 –