2017-01-16 6 views
-1

Я использую Hbase утилиты org.apache.hadoop.hbase.util.Bytes Я формировала массив байт из строки (в примере в Scala):Различие между новой строкой и Bytes.toString

val bytes = Bytes.toBytes("test")

и хочу преобразовать обратно в String.

В чем разница между new String(bytes,"UTF-8") и Bytes.toString(bytes)

Они оба работ.

ответ

0

Угадайте, что вы говорите о https://hbase.apache.org/apidocs/org/apache/hadoop/hbase/util/Bytes.html, в основном ничего: Bytes.toString вызовет new String, за исключением случаев, когда массив пуст. Вы можете увидеть метод, называемый here:

public static String toString(final byte [] b, int off, int len) { 
    if (b == null) { 
     return null; 
    } 
    if (len == 0) { 
     return ""; 
    } 
    return new String(b, off, len, UTF8_CHARSET); 
} 

в будущем, пожалуйста, укажите любые библиотеки, которые вы используете в этом вопросе (и вопрос не имеет никакого отношения к Scala).

+0

Благодарим вас за ваш ответ. Я попытаюсь изменить вопрос, чтобы быть более понятным – salvob