1

私はString str = "admin:admin"

ASCIIに変換したいです。

これを試してみstr.getByte("US-ASCII");ましたが、これは byte[] 配列 (つまり[97, 100, 109, 105, 110, 58, 97, 100, 109, 105, 110]) を返します。単一の文字列変数に ASCII 値が必要です。これどうやってするの。

シンプルにこの文字列が欲しい strASCII = "971001091051105897100109105110"

これは可能ですか?

私もこれを試しました

StringBuilder builder = new StringBuilder();
    for (int i=0; i<=b.length; i++) {
        builder.append(b);
    }
    String result = builder.toString();

しかし、今ではこのようなものが返されます

[B@405666e0[B@405666e0[B@405666e0[B@405666e0[B@405666e0[B@405666e0[B@405666e0[B@405666e0[B@405666e0[B@405666e0[B@405666e0[B@405666e0

これは何ですか?

4

2 に答える 2

1

単純にループしてみてくださいStringBuilder:

StringBuilder builder = new StringBuilder();
for (byte b : arr) {
    builder.append(b);
}
String result = builder.toString();

もちろん、文字列の連結でも同じことを行うことができますが、StringBuilder明示的に使用すると、多数の小さな追加が高速になります。

于 2013-02-12T05:38:16.557 に答える
0

シンプルな for Loop および String ビルダーを使用して、これを行うこともできます。

 StringBuilder builder = new StringBuilder();
    for (int i = 0; i < b.length; i++) {
        builder.append(b[i]);
    }
    String result = builder.toString();
于 2013-02-12T06:02:08.840 に答える