1

良い一日!

XMLのこの部分にアクセスして、要素名を出力するにはどうすればよいですか?下の画像を参照してください。

ここに画像の説明を入力してください

現在、次のコードを進めることができません。

    XmlDataDocument xmldoc = new XmlDataDocument();         
                XmlNode xmlnode;
                FileStream fs = new FileStream(@"D:\Files\20120604\Data_120604-062516_003.xml", FileMode.Open, FileAccess.Read);
                xmldoc.Load(fs);


//MessageBox.Show("YUMDMMATMAS05");
4

3 に答える 3

2

必要な動作がルートノードを取得することである場合は、を使用して取得できますxmldoc.DocumentElement

Nameプロパティを使用して、任意のXMLElementの名前を取得できます。

于 2012-06-04T12:16:41.943 に答える
0

ドキュメントの残りの部分が必要ない場合は、 (廃止されたところでXmlDataDocument)またはXmlDocumentを使用してメモリにすべてを読み込まないでください。ただし、 XmlReaderinsted(これXmlTextReaderも廃止されたものです)を使用してください。

using(var reader = XmlReader.Create(new FileStream(@"D:\Files\20120604\Data_120604-062516_003.xml", FileMode.Open, FileAccess.Read), new XmlReaderSettings { CloseInput = true, DtdProcessing = DtdProcessing.Ignore, IgnoreComments = true, IgnoreProcessingInstructions = true, IgnoreWhitespace = true }))
            {
                XmlNodeType nt;
                do
                {
                    nt = reader.MoveToContent();
                    if(nt == XmlNodeType.Element) {
                        MessageBox.Show(nt.Name);
                        break;
                    }
                }
                while(nt != XmlNodeType.None)
            }
于 2012-06-04T12:37:17.347 に答える
0

正規表現の使用

Pattern = @"\?>\s*?<(?<Name>.*?)>.*?</(1)>"
于 2012-06-04T12:28:58.670 に答える