byte[] buff = input.readAllBytes();
System.out.println(buff.toString());
DimonSv
29 уровень
Объясните,пожалуйста, для тех кто в танке почему такой вариант не проходит
Решен
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Дмитрий Java Developer в Свое дело
23 июня 2021, 18:29полезный
В этих случаях кодировки разные
попробуй сам в IDE вывести 2 строки:
public static byte[] bytes = new byte[]{10, 33, 48, 100, 102, 118, 59, 57, 40, 22};
System.out.println(bytes.toString());
System.out.println(new String(bytes));
Это две абсолютно разные строки.
bytes.toString() != new String(bytes)
Видимо UTF-8 / UTF-16, подробнее это уже у гуру надо спрашивать
+3
DimonSv
23 июня 2021, 18:43
Спасибо!
0
hidden #2322530
23 июня 2021, 16:28
та информация что ты сказал с API может например не иметь слов вообще.потом ещё есть кодировка и вот это вот всё.
0
DimonSv
23 июня 2021, 18:17
String str = new String(buff);
System.out.println(str);
В чем разница с этим кодом, почему так работает?
может дело в том что метод toString() не переопределен для класса byte[] ?
или я не правильно понял суть происходящего?
0