Поиск по сайту:

Строка в массив байтов, массив байтов в строку в Java


Сегодня мы узнаем, как преобразовать строку в массив байтов в java. Мы также узнаем, как преобразовать массив байтов в строку в Java.

Строка в байтовый массив

Мы можем использовать метод класса String getBytes() для кодирования строки в последовательность байтов, используя кодировку платформы по умолчанию. Этот метод перегружен, и мы также можем передать Charset в качестве аргумента. Вот простая программа, показывающая, как преобразовать строку в массив байтов в java.

package com.journaldev.util;

import java.util.Arrays;

public class StringToByteArray {

	public static void main(String[] args) {
		String str = "PANKAJ";
		byte[] byteArr = str.getBytes();
		// print the byte[] elements
		System.out.println("String to byte array: " + Arrays.toString(byteArr));
	}
}
byte[] byteArr = str.getBytes("UTF-8");

Однако, если мы укажем имя набора символов, нам придется либо перехватывать исключение UnsupportedEncodingException, либо выбрасывать его. Лучшим подходом является использование класса StandardCharsets, представленного в Java 1.7, как показано ниже.

byte[] byteArr = str.getBytes(StandardCharsets.UTF_8);

Вот и все способы преобразования строки в байтовый массив в java.

Массив байтов Java в строку

Давайте рассмотрим простую программу, показывающую, как преобразовать массив байтов в строку на Java.

package com.journaldev.util;

public class ByteArrayToString {

	public static void main(String[] args) {
		byte[] byteArray = { 'P', 'A', 'N', 'K', 'A', 'J' };
		byte[] byteArray1 = { 80, 65, 78, 75, 65, 74 };

		String str = new String(byteArray);
		String str1 = new String(byteArray1);

		System.out.println(str);
		System.out.println(str1);
	}
}
String str = new String(byteArray, StandardCharsets.UTF_8);

Класс String также имеет метод для преобразования подмножества массива байтов в строку.

byte[] byteArray1 = { 80, 65, 78, 75, 65, 74 };
String str = new String(byteArray1, 0, 3, StandardCharsets.UTF_8);

Вышеприведенный код совершенно прекрасен, и значение «str» будет «PAN». Это все о преобразовании массива байтов в строку в Java.

Вы можете проверить больше примеров массивов из нашего репозитория GitHub.

Ссылка: документ API getBytes