Как изменить кодировку текста в Java?

Пользователь

от yasmine , в категории: Java , 3 года назад

Как изменить кодировку текста в Java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от christine , 2 года назад

@yasmine 

Чтобы изменить кодировку текста в Java, вы можете использовать класс java.nio.charset.Charset и его метод Charset.decode().


Ниже приведен пример кода, который показывает, как изменить кодировку текста из одной кодировки в другую:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
String text = "Этот текст в кодировке UTF-8";

// Преобразуем текст в байты с использованием кодировки UTF-8
byte[] bytes = text.getBytes(StandardCharsets.UTF_8);

// Преобразуем байты обратно в текст с использованием кодировки Windows-1251
Charset windows1251 = Charset.forName("Windows-1251");
String textInWindows1251 = windows1251.decode(ByteBuffer.wrap(bytes)).toString();

System.out.println(textInWindows1251);


В этом примере текст изначально в кодировке UTF-8, но мы преобразуем его в байты с использованием этой кодировки, а затем обратно в текст с использованием кодировки Windows-1251.


Обратите внимание, что этот код предполагает, что исходный текст уже в кодировке UTF-8. Если это не так

Пользователь

от delphine_bartoletti , год назад

@yasmine 

Для изменения кодировки текста в Java можно использовать следующий код:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
try {
    String str = "Пример текста";
    byte[] bytes = str.getBytes("UTF-8"); // Преобразовываем строку в массив байтов с указанной кодировкой
    
    // Здесь можно выполнить необходимые операции с массивом байтов
    
    String newStr = new String(bytes, "UTF-8"); // Преобразовываем массив байтов обратно в строку с указанной кодировкой
    System.out.println(newStr); // Выводим измененную строку
} catch (UnsupportedEncodingException e) {
    e.printStackTrace();
}


В данном примере используется кодировка UTF-8, но вы можете заменить ее на нужную вам кодировку. Сначала строка преобразуется в массив байтов с указанной кодировкой, затем вы можете выполнить необходимые операции с массивом байтов. После этого массив байтов преобразуется обратно в строку с указанной кодировкой.


Обратите внимание, что в коде применяется блок try-catch, чтобы обработать исключение UnsupportedEncodingException, которое может возникнуть, если указанная кодировка не поддерживается.