byte 0x98



Автор 111 11111 задал вопрос в разделе Java

нужна помощь по Java и получил лучший ответ

Ответ от ?????? ????r?????u[гуру]
херня, слово СТЕПИК:)

Ответ от Александр[гуру]
тебе нужна профессиональная помощь врача

Ответ от Денис Рамусь[гуру]
package apps;
//Исключение если что пойдет не так
import java.io.UnsupportedEncodingException;
public class Application {
//Ненавижу писать в главном методе и не навижу статики
public static void main(String[] args){
Application app = new Application();
app.start();
}
private void start() {
/*
Вообще в Java есть класс Charset, но мы воспользуемся простым
способом. У класса String есть конструктор с параметром
byte[] bytes и String charset. new String(byte[] bytes, String ch)
Первая указывает сами байты, авторая кодировку по которой будут
считаны байты. Так же в Java можно и менять кодировку у строк.
Для этого у строки нужно вызвать метод getBytes(String charset)
"This is a simple line".getBytes(String charset) это даст нам
массив байтов преобразованных в указаную кодировку.
Сама же Java хранит свои значение в utf-16
А вводи или выводит НАВЕРНОЕ в utf-8 если не указывать намерянно...
*/
//Сами байты
byte[] bytes = {
(byte)0xd0, (byte)0xa1, (byte)0xd0,
(byte)0xa2, (byte)0xd0, (byte)0x95,
(byte)0xd0, (byte)0x9f, (byte)0xd0,
(byte)0x98, (byte)0xd0, (byte)0x9a,
(byte)0x3a, (byte)0x29
};
//Строка в которую преобразуем байты
String line = null;
//Страхуемся что не вылетит ошибка
try {
//Создаем строку из байтов и говорим что они в UTF-8
line = new String (bytes, "UTF-8");
//Вывод на экран
System.out.println(line + " (UTF-8)");
//А вот пример с преобразованием кодировоки в Windows-1251
//Перекодируем в Windows-1251
byte[] newBytesWindows1251 = line.getBytes("Windows-1251");
//Тут просто говорим что байты в Windows-1251. Никаких преобразований!!!
String newLineWindows1251 = new String(newBytesWindows1251, "Windows-1251");
//Вывод на экран новой строки
System.out.println(newLineWindows1251 + " (Windows-1251)");
//И пример не указаной правильно кодировки (Сама кодировка Windows-1521, но показать ее на экране пытаемся как ASCII)
System.out.println(new String(newBytesWindows1251, "ASCII") + " (Windows-1251 пытаемся отобразить как ASCII)");
//А это если что пойдет не так
} catch (UnsupportedEncodingException ex) {
System.out.println("Сгенерировано исключение");
}
}
}

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: нужна помощь по Java
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*