1

現在、大きな XML ファイルの読み取りを処理できるメソッドを作成しようとしています。必要なのは、一度に 1000 行または小さなバッチでロードするメソッドだけです。

私はストリームリーダー、xmlreaders、およびファイルストリームを見てきました。必要なものを取得するためにデータを処理している間、ストリームを開いたままにしておくという言及を見てきましたが、頭を悩ませているようです。

同様の質問をチェックするのに長い時間を費やしましたが、私に役立つものを見つけることができるようです.

ps。最初は、readline の周りで 1000 のカウンターまで for ループを実行することを考えていましたが、その 1000 行から別の 1000 などをファイルの最後まで読み取る方法を理解できないようです。

4

1 に答える 1

0

私の感覚では、カスタム XML リーダーの実装が必要になるでしょう。

たとえば、構造が次のようになっているとします。

root
    item
        stuff
    /item
    item
        stuff
    /item
    item
        stuff
    /item
    item
        stuff
    /item
/root

多数の「アイテム」ブロック (バッチで処理したい数だけ) を読み取り、それらをさらに処理するために有効な XML ドキュメントに変換するコードを作成する必要があります。

ただし、XML ドキュメントが 1 つの大規模な広がりのあるエンティティである場合、それを少しずつ処理するエレガントな方法はないと思います。

于 2013-03-28T10:58:35.967 に答える