2009-06-24 2 views
0

私はNettyとMinaを勉強していましたが、バイナリストリームを書き換える最良の方法については混乱しています。たとえば、XMLの置換と転送を可能にするプロキシを作成したいと考えています。Javaを使用したバイナリストリームの書き換え

+0

もっと正確に教えてください。あなたは、ストリームを取るストリームを提供し、その間にデータを操作するJavaクラスを記述しますか? BTW:XMLはバイナリデータではなくプレーンテキストです。 –

答えて

1

あなたはレベルが低すぎると思っています。バイナリの上に抽象化されているので、XMLはあまり「バイナリ」ではありません。 XMLのスニペットを改行したい場合は、パケットのペイロード部分を突き刺してXMLのパターンを探す必要があります。単純な方法は、バイトを再構築した後に正規表現を使用することですコンテンツを一時的に。

この検索が完了し、必要なものと一致すると、置換して再送信するものを置き換えることができます。

これの難しい部分は、検索対象の最初と最後を見つけることができるように、入力をキャッシュする必要があるということです。これを困難にするのは、しばしば、データペイロードの「開始」と「終了」を構成するものが何であるかを知らないことです。

関連する問題