Введение
В Java иногда возникает необходимость преобразовать строку в байты. Строка в Java работает с Unicode-значениями каждого символа, а байты используются для ссылок на эти значения. В этом практическом занятии мы узнаем, как преобразовать строку в байты в Java.
Объявить строку
Объявите переменную строки, которая содержит некоторый текст. В этом примере давайте используем "Hello World!".
String message = "Hello World!";
Преобразовать строку в байты с использованием стандартной кодировки
Преобразуйте строку в байты с использованием метода getBytes() класса String. Метод getBytes() кодирует указанную строку в последовательность байтов с использованием стандартной кодировки платформы.
byte[] bytes = message.getBytes();
Напечатать байты
Распечатайте массив байтов в консоль с использованием метода Arrays.toString().
System.out.println(Arrays.toString(bytes));
Преобразовать строку в байты с использованием определенной кодировки
Для преобразования строки в байты с использованием определенной кодировки сначала импортируйте пакет Charset в начале файла.
import java.nio.charset.Charset;
Теперь используйте метод forName() класса Charset для указания кодировки в методе getBytes().
byte[] bytes = message.getBytes(Charset.forName("UTF-8"));
Напечатать байты
Распечатайте массив байтов в консоль с использованием метода Arrays.toString().
System.out.println(Arrays.toString(bytes));
Преобразовать байты обратно в строку
Для преобразования байтов обратно в строку используйте конструктор String, который принимает массив байтов в качестве параметра.
String str = new String(bytes);
Напечатать преобразованную строку
Распечатайте преобразованную строку в консоль.
System.out.println(str);
Компилировать и запустить программу
Скомпилируйте и запустите программу в терминале с использованием следующей команды:
javac StringToByte.java && java StringToByte
Резюме
В этом практическом занятии мы узнали, как преобразовать строку в байты в Java с использованием метода getBytes() и как указать кодировку. Мы также узнали, как преобразовать байты обратно в строку с использованием конструктора String.



