3

XmlReader を XmlTextReader に変換するにはどうすればよいですか?

コードスニペット:

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

これが私が得たビルドエラーです:

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

明示的な変換が存在します (キャストがありませんか?)。

pomfile は FileInfo 型です

4

3 に答える 3

2

XmlTextReader.Create()関数は、キャストする必要がある XMLReader を生成しますがXmlTextReader、キャストが不可能な場合、実行時例外が発生する可能性があります。

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

またはこれを行うことができます:

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

しかし、最善の方法は次のとおりです。

XmlTextReader reader = new XmlTextReader(pomfile.FullName);
于 2009-10-08T08:51:46.480 に答える
1

XmlTextReader.NET 2.0 では廃止されました。代わりにこれを行うだけです:

XmlReader reader = XmlReader.Create(pomfile.FullName);
于 2009-10-08T09:29:49.860 に答える
0

XmlReaderの抽象基本クラスであるXmlTextReaderため、ダウンキャストを強制する必要があります (これはお勧めしません)。

期待しているクラスを直接インスタンス化します( najmeddineの回答で指摘されているように)

于 2009-10-08T09:27:21.323 に答える