Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Проблемы с кодировкой при создании строки / 2 сообщений из 2, страница 1 из 1
27.01.2006, 09:39
    #33506591
java_encoder
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с кодировкой при создании строки
У меня сложилась такая ситуация. Создаю строку из массива байтов следующим образом:
Код: plaintext
1.
2.
3.
          byte  [] bs = sign.sign();
	 System.out.println(bs.length);   // Выводит 128
	 String s =   new  String(bs,"UTF-8");
Далее делаю пытаюсь получить из этой строки массив байт:
Код: plaintext
1.
2.
	 byte [] b = s.getBytes("UTF-8");
	System.out.println(b.length); // Выводит 229
В чем проблемма, не могу понять, если использую вместо UTF-8 кодировку ISO-8859-1, то тогда длины массивов совпадают, как врочем и сами массивы.
...
Рейтинг: 0 / 0
27.01.2006, 10:20
    #33506677
М.Голованов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с кодировкой при создании строки
Интуиция мне подсказывает, что вы пытаетесь представить какой-то ключ шифрования в виде строки. Ключ у вас - произвольная последовательность байтов. В то же время любой charset НЕ содержит символ для каждого байта (в случае ISO8859_1 ) или для каждой последовательности байтов (в случае UTF8). Поэтому у вас ничего не выйдет.

Если хотите ключ корректно превратить в строку, а потом обратно в байты, делайте так, как делается везде: байты в строку кодируйте алгоритмом Base64 , а строку в байты декодируйте им же.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Проблемы с кодировкой при создании строки / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]