インデックスを作成し、後で巨大な xml ファイルの特定の部分にアクセスしたいので、いくつかの「startElement」イベントのオフセット( ftell
... ) を取得する必要があります。
libxml2 ( http://www.xmlsoft.org/xmlreader.html )のプル パーサー ( stax ) インターフェイスを使用すると、 libxml2を使用してイベントのストリームでオフセットを取得できますか?
インデックスを作成し、後で巨大な xml ファイルの特定の部分にアクセスしたいので、いくつかの「startElement」イベントのオフセット( ftell
... ) を取得する必要があります。
libxml2 ( http://www.xmlsoft.org/xmlreader.html )のプル パーサー ( stax ) インターフェイスを使用すると、 libxml2を使用してイベントのストリームでオフセットを取得できますか?
関数を使用しますxmlTextReaderByteConsumed
:
long xmlTextReaderByteConsumed (xmlTextReaderPtr reader)
この関数は、リーダーが使用するパーサーの現在のインデックスを、現在のエンティティの先頭から相対的に提供します。この関数は実際には、リーダーに関連付けられたパーサー コンテキストの xmlBytesConsumed() への呼び出しをラップするだけです。詳細については、xmlBytesConsumed() を参照してください。
リーダー: XML リーダー
戻り値: エンティティの先頭からのバイト単位のインデックス、またはインデックスを計算できなかった場合は -1。