0

インデックスを作成し、後で巨大な xml ファイルの特定の部分にアクセスしたいので、いくつかの「startElement」イベントのオフセット( ftell ... ) を取得する必要があります。

libxml2 ( http://www.xmlsoft.org/xmlreader.html )のプル パーサー ( stax ) インターフェイスを使用すると、 libxml2を使用してイベントのストリームでオフセットを取得できますか?

4

1 に答える 1

1

関数を使用しますxmlTextReaderByteConsumed

long xmlTextReaderByteConsumed (xmlTextReaderPtr reader)

この関数は、リーダーが使用するパーサーの現在のインデックスを、現在のエンティティの先頭から相対的に提供します。この関数は実際には、リーダーに関連付けられたパーサー コンテキストの xmlBytesConsumed() への呼び出しをラップするだけです。詳細については、xmlBytesConsumed() を参照してください。

リーダー: XML リーダー
戻り値: エンティティの先頭からのバイト単位のインデックス、またはインデックスを計算できなかった場合は -1。

于 2015-12-16T15:35:11.640 に答える