将XmlReader转换为XmlTextReader

时间:2009-10-08 08:42:32

标签: c# xmlreader xmltextreader

如何将XmlReader转换为XmlTextReader?

代码段:

XmlTextReader reader = XmlTextReader.Create(pomfile.FullName);

这是我得到的构建错误:

Cannot implicitly convert type 'System.Xml.XmlReader' to 'System.Xml.XmlTextReader'. An

存在显式转换(您是否错过了演员?)。

pomfile的类型为FileInfo

3 个答案:

答案 0 :(得分:2)

XmlTextReader.Create()函数会生成您必须强制转换为XmlTextReader的XMLReader,但如果无法进行强制转换,则会产生运行时异常:

XmlTextReader tr = (XmlTextReader)XmlTextReader.Create(pomfile.FullName));

或者你可以这样做:

XmlTextReader reader = new XmlTextReader(XmlTextReader.Create(pomfile.FullName));

但最好的办法是:

XmlTextReader reader = new XmlTextReader(pomfile.FullName);

答案 1 :(得分:1)

XmlTextReader在.NET 2.0中已过时。只需这样做:

XmlReader reader = XmlReader.Create(pomfile.FullName);

答案 2 :(得分:0)

XmlReaderXmlTextReader的抽象基类,因此您需要强制转发(我不建议)。

直接实例化您期望的类(如najmeddine's answer中所述)