6

印刷できない文字をJavaの文字列に追加して、tcpパイプで送信できるようにする必要があります。charsは、私が使用しているプロトコルにとって何かを意味します(それぞれレコードセパレーターとメッセージの終わり)

これを行うための最良の方法は何ですか?

理想的には、それらを定数として参照して、文字列concatonation / stringbuilder / string.formatを使用して、入力せずに必要な場所に追加できるようにします。

不思議なことに、必要な文字はASCIIx1E(レコード区切り文字)とACSIIx03(テキストの終わり)です。

4

3 に答える 3

8
public final class ProtocolConstants {
    public final char RECORD_SEPARATOR = 0x1e;
    public final char END_OF_TEXT = 0x03;

    private ProtocolConstants() {}
}

そんな感じ?

于 2009-07-22T11:47:01.453 に答える
6

必要に応じて、これらをUnicodeリテラル(文字または文字列)として記述できます。

final String endOfText = "\u0003";

バイトベースのプロトコルには文字通りASCIIは必要ないと思います(文字は16ビットのままです)。

于 2009-07-22T12:15:48.330 に答える
1

Javaに任意の文字を追加できますString。ただし、Stringバイナリデータを送信するだけの場合は、おそらくaは必要ありません。byte[]または他のバイト指向のインターフェースの使用を検討してください。

于 2009-07-22T18:41:12.783 に答える