Javaでバイト配列を文字列に変換する方法は何ですか?
Javaでバイト配列から文字列に変換する方法には2種類あります。
- Stringのコンストラクタを利用します: Stringのコンストラクタでは、バイト配列を文字列に変換できます。そのコンストラクタの形式はnew String(byte[] bytes)です。例えば:
byte[] bytes = {72, 101, 108, 108, 111};
String str = new String(bytes);
System.out.println(str); // 输出:Hello
- 文字列の静的メソッドを使用:Java には、バイト配列を文字列に変換するための静的メソッド getBytes() が備わっています。例:
byte[] bytes = {72, 101, 108, 108, 111};
String str = new String(bytes);
System.out.println(str); // 输出:Hello
バイト配列を対応する文字列に変換する方法として、これら 2 つの方法が挙げられます。文字列のコンストラクタを使用する場合、プラットフォームの既定文字セットが使用されることに注意してください。バイト配列の文字セットがプラットフォーム既定文字セットと異なる場合、文字化けが発生する可能性があります。コンストラクタで文字セットを指定して、この問題を解決できます。例:
byte[] bytes = {72, 101, 108, 108, 111};
String str = new String(bytes, StandardCharsets.UTF_8);
System.out.println(str); // 输出:Hello
上記の例では、バイト配列を解析するために UTF-8 文字セットが指定されています。