0

非常に大きな XML ファイル (サイズまたは要素の数) を解析するのに (パフォーマンスで) 最適な XmlDocument または XmlReader はどれですか。

4

2 に答える 2

3

問題は、どちらが速いかではなく、どちらがあなたのケースに適しているかということです。

XmlDocument はドキュメント全体をメモリにロードし、ドキュメントを変更してコンテンツをクエリできるようにします。結局、変更したドキュメントをファイルに保存できます。

XmlReader は、一度に 1 つの要素に対して、XML ドキュメントのコンテンツへの読み取り専用および転送専用のアクセスを提供します。

あなたのケースに適合する説明を選択する必要があります。

また、LINQ to XML と呼ばれる、.NET で XML ドキュメントを処理する別の方法があることにも注意してください。

于 2013-10-21T06:51:09.920 に答える
-1

別のオプションとして、XML をデータセットにロードすることもできます。

Public Function GetXMLDataset() As DataSet
    Try
        Dim ds As New DataSet
        Dim xd As New XmlDocument
        xd.LoadXml(txtXML.Text)
        ds.ReadXml(New XmlNodeReader(xd), XmlReadMode.InferSchema)
        Return ds
    Catch ex As Exception
        MsgBox(ex.Message)
        Return Nothing
    End Try
End Function

このスニペットでは、XML は既にテキスト ボックスに読み込まれていますが、XML を取得する別の方法を開発できます。

ファイル全体を読み取るのは実用的ではない可能性があるため、「かなり大きい」と定義することをお勧めします。

于 2013-10-21T18:01:46.260 に答える