Я пишу работу Hadoop/HBase. Мне нужно было преобразовать Java String в массив байтов. Существуют ли различия между Java String.getBytes() и Hadoop Bytes.toBytes()?
Разница между String.getBytes() и Bytes.toBytes(данные String)
Ответ 1
В соответствии с его документация Bytes.toBytes() преобразует параметр в byte[] с использованием UTF-8.
String.getBytes() (без аргументов) преобразует String в byte[], используя стандартную кодировку платформы. Эта кодировка может варьироваться в зависимости от ОС и пользовательских настроек. Обычно следует избегать использования этого метода.
Вы можете использовать String.getBytes(String) (или вариант Charset), чтобы указать кодировку для.
Ответ 2
Чтение Javadoc, кажется, что String.getBytes() возвращает byte[] с использованием кодировки по умолчанию, а Bytes.toBytes() возвращает byte[] с помощью UTF-8
Это может быть одно и то же, но может и не быть.
Всегда полезно читать Javadoc, если вы хотите что-то знать.;)