Јава Стринг гетБитес ()

Метода Јава Стринг гетБитес () кодира низ у низ бајтова и чува га у бајт-пољу.

Синтакса getBytes()методе Стринг је:

 string.getBytes() string.getBytes(Charset charset) string.getBytes(String charsetName)

Овде је стринг објект Stringкласе.

getBytes()Метод враћа бајтова низ.

1. гетБитес () без икаквих параметара

Ако не проследите ниједан параметар, getBytes()кодира низ помоћу подразумеваног скупа знакова на платформи.

Пример: гетБитес () без икаквих параметара

 import java.util.Arrays; class Main ( public static void main(String() args) ( String str = "Java"; byte() byteArray; // convert the string to a byte array // using platform's default charset byteArray = str.getBytes(); System.out.println(Arrays.toString(byteArray)); ) )

Оутпут

 (74, 97, 118, 97)

Напомена:Arrays Класу из горњег примера користили смо за штампање бајт поља у читљивом облику. То нема никакве везе са getBytes().

2. гетБитес () са ЦхарСет параметром

Ево различитих CharSetдоступних у јави:

  • УТФ-8 - Осмобитни УЦС формат трансформације
  • УТФ-16 - Шеснаест-битни УЦС формат трансформације
  • УТФ-16БЕ - Шеснаест-битни УЦС формат трансформације, биг-ендиан бајтни поредак
  • УТФ-16ЛЕ - Шеснаест-битни УЦС формат трансформације, мало-ендиан ред бајтова
  • УС-АСЦИИ - Седмобитни АСЦИИ
  • ИСО-8859-1 - ИСО латиница бр. 1

Пример: гетБитес () са параметром ЦхарСет

 import java.util.Arrays; import java.nio.charset.Charset; class Main ( public static void main(String() args) ( String str = "Java"; byte() byteArray; // using UTF-8 for encoding byteArray = str.getBytes(Charset.forName("UTF-8")); System.out.println(Arrays.toString(byteArray)); // using UTF-16 for encoding byteArray = str.getBytes(Charset.forName("UTF-16")); System.out.println(Arrays.toString(byteArray)); ) )

Оутпут

 (74, 97, 118, 97) (-2, -1, 0, 74, 0, 97, 0, 118, 0, 97)

Напомена: У горњем програму увезли смо java.nio.charset.Charsetза употребу CharSet. ArraysКласу смо увезли за испис бајт поља у читљивом облику.

3. гетБитес () са низом параметара

Такође можете одредити тип кодирања за getBytes()коришћење низова. Када користите getBytes()на овај начин, морате умотати код унутар три… цатцх блоцк.

Пример: гетБитес () са параметром низа

 import java.util.Arrays; class Main ( public static void main(String() args) ( String str = "Java"; byte() byteArray; try ( byteArray = str.getBytes("UTF-8"); System.out.println(Arrays.toString(byteArray)); byteArray = str.getBytes("UTF-16"); System.out.println(Arrays.toString(byteArray)); // wrong encoding // throws an exception byteArray = str.getBytes("UTF-34"); System.out.println(Arrays.toString(byteArray)); ) catch (Exception e) ( System.out.println(e + " encoding is wrong"); ) ) )

Оутпут

 (74, 97, 118, 97) (-2, -1, 0, 74, 0, 97, 0, 118, 0, 97) јава.ио.УнсуппортедЕнцодингЕкцептион: УТФ-34 кодирање је погрешно

Напомена: Увезли смо јава.утил.Арраис за испис низа бајтова у читљивом облику. То нема никакве везе са getBytes().

Занимљиви Чланци...