предыстория: Регулярное выражение Java для двоичной строки
Я могу извлечь подстроку с необходимыми мне двоичными данными, но когда я использую
String s = matcher.group(1);
Кажется, чтоданные испорчены,
, если быть точным, это только те символы, которые относятся к расширенной таблице ASCII, вероятно, от 128 до 255. Другие символы остаются без изменений, но некоторые повреждены.Я имею в виду, что мне нужно преобразовать эту строку "s" в байтовый массив, но это: String s2 = new String (s.getBytes (), "US-ASCII")
или this
String s2 = new String(s.getBytes(), "ISO-8859-1")
и позже,
fileOutputStream.write(s2.getBytes())
заменяет все символы из расширенной таблицы ASCII на "?", В то время как другие, такие как \ 0 или 'A', остаются не поврежденными.
Как интерпретировать строку как простые [0-255] двоичные символы ascii?
PS Я решил, нужно использовать
String encoding = "ISO-8859-1";
для кодирования / декодирования байтовых массивов, и все работаетидеально.