2012-04-24 7 views
0

SAX APIを使用してドキュメントを処理し、呼び出し元がSAXイベントを処理するSAX ContentHandlerのインスタンスを渡すことを可能にする新しいAPIを作成しました。これはうまくいきますが、コンテンツをInputStreamとして受け取るレガシーコードもあります。SAX ContentHandler文字列(..)をInputStreamに変換する

したがって、ContentHandlerの#文字(..)で受け取った文字でInputStreamを返すgetStream()メソッドを持つSAX ContentHandlerを実装する必要があります。どのように効率的にこれを行うにはどのような考え?

おかげ

+0

これはJavaです。 ;)これまでに試したことを示すコードを投稿してください。 – paulsm4

+0

はい、Javaです。私たちはあまり持っていません。これは、我々が考えているものです:入力ストリームを迅速に排出されていない場合はブロック: StreamingContentHandler: ます。public void文字(文字[] CH、int型開始、int型の長さ)がSAXExceptionの \t { \t \t // TODOをスローします十分に \t \t文字列str = new文字列(ch、start、length); \t \t out.write(str.getBytes( "UTF-8")); \t \t super.characters(ch、start、length); \t} – alecswan

答えて

0

は、我々はティカからBodyContentHandlerを使用して終了してたPipedInputStreamに文字をパイプそれに持つPipedOutputStreamに合格しました。