« IDocumentPartitionerに文書を接続するのを忘れずに・・・ | トップページ | RuleBasedPartitionScannerはIRuleじゃだめ! »

2004.01.12

ドキュメント区画の取得

ドキュメントパーティショナーによって区画分けされたドキュメントから,そのドキュメントの区画を取り出す方法です。

  IDocument document = ...;
  int length = document.getLength();
  ITypedRegion[] regisons = document.computePartitioning(0, length);

最初にドキュメント全体の長さを取得して,computePartitioningメソッドを使って型付き区画の配列を得ています。その際,オフセット(開始位置)を0とし,長さをlengthつまりドキュメント全体としています。

あとは,取得した配列をぐるぐる回して,以下の内容を利用します。

  regions[n].getType() - 区画のコンテンツタイプ
  regions[n].getOffset() - 区画の開始位置
  regions[n].getLength() - 区画の長さ

この際,もし区画に改行文字が含まれる場合は,Windowsの場合はCR+LFで2文字が長さに含まれます。
さらに,区画の実際の文字列を得たければ,

  String text = document.get(regions[n].getOffset(), regions[n].getLength());

とすべし。

|

« IDocumentPartitionerに文書を接続するのを忘れずに・・・ | トップページ | RuleBasedPartitionScannerはIRuleじゃだめ! »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/12631/96007

この記事へのトラックバック一覧です: ドキュメント区画の取得:

« IDocumentPartitionerに文書を接続するのを忘れずに・・・ | トップページ | RuleBasedPartitionScannerはIRuleじゃだめ! »