1

まず、クライアントサーバーアーキテクチャを使用しています。クライアントにはandroid、サーバーにはnode.jsを使用しています。これらは、Socket.ioライブラリを介して接続されているため、WebSocketを使用しています。

私が持っている疑問は、JavaからXMLSerializerを使用してXML文字列を生成していることです。これをEXIにエンコードしてサーバーに送信したいのですが、ファイルを使用せずにXML-EXIのエンコードを実行することは可能ですか?文字列から文字列に直接?私が見るすべての例は、私のXMLがファイル内にあり、出力を別のファイルに入れたいと想定しているためです。もう1つの疑問は、EXIを文字列として送信できるかどうかです。クライアントとサーバー間の通信はすでに確立していますが、文字列を送信するだけなので、ファイル全体を送信できるかどうかはわかりません。その場合、送信されるデータの量に違いはありますか?

4

1 に答える 1

1

最後に、私はそれを解決しました。同じ問題を抱えている人にとって、解決策は次のとおりです。

String input = methodGivingXMLString();
byte inputBytes[] = input.getBytes();
ByteArrayInputStream in = new ByteArrayInputStream(inputBytes);
transmogrifier.encode(new InputSource(in));

入力と出力の場合:

 ByteArrayOutputStream result = new ByteArrayOutputStream();
 transmogrifier.setOutputStream(result);

注1:OpenExiライブラリを使用しています

注 2: encode() メソッドを呼び出す前に、出力ストリームを設定する必要があります。

于 2013-02-01T10:25:40.053 に答える