2015-10-22 3 views
1

Я хочу преобразовать последовательность байтов в байт [] в строку, добавляемую в текстовый файл. Затем, когда строка вытягивается, я хочу преобразовать ее обратно в байт [] для ее декодирования. Я знаю, что не могу использовать getBytes(), мне нужно скопировать строку в исходный формат byte [], а затем декодировать ее обратно в читаемую строку. Это возможно?Java read string as byte []

 byte[] hash = pw.getBytes("UTF8"); 
    pw = hash.toString(); 

Затем я передать строку другому классу, где мне нужно, чтобы быть прочитан как байты, не изменились его байт формы.

ответ

3

toString не будет работать. Вам нужно написать, потому что это строковое представление объекта Array.

String s = new String(hash,"UTF-8"); 
+0

Так что это правильный способ превратить байт [] в строку. Как преобразовать строку в байты? – caine1337

+0

@ caine1337: Точно так, как вы сделали это в своем исходном вопросе, с 'pw.getBytes (« UTF-8 »)'. Вы уже сделали это правильно. –

+0

@ caine1337 'byte [] hash = pw.getBytes (" UTF8 ");' где pw - строка. –