Java virkne getBytes ()

Java String getBytes () metode kodē virkni baitu secībā un saglabā to baitu masīvā.

String getBytes()metodes sintakse ir:

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

Šeit virkne ir Stringklases objekts .

getBytes()Metode atgriež baitu masīvu.

1. getBytes () bez parametriem

Ja jūs neizturat nevienu parametru, getBytes()kodējiet virkni, izmantojot platformas noklusējuma simbolu kopu.

Piemērs: getBytes () bez parametriem

 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)); ) )

Rezultāts

 (74, 97, 118, 97)

Piezīme:Arrays Iepriekšējā piemērā mēs izmantojām klasi, lai drukātu baitu masīvu lasāmā formā. Tam nav nekāda sakara getBytes().

2. getBytes () ar CharSet parametru

Šeit ir dažādi CharSetpieejami java:

  • UTF-8 - astoņu bitu UCS pārveidošanas formāts
  • UTF-16 - sešpadsmit bitu UCS pārveidošanas formāts
  • UTF-16BE - sešpadsmit bitu UCS transformācijas formāts, lielo endiātu baitu secība
  • UTF-16LE - sešpadsmit bitu UCS transformācijas formāts, maza endiāta baitu secība
  • ASV-ASCII - septiņu bitu ASCII
  • ISO-8859-1 - ISO latīņu alfabēts Nr. 1

Piemērs: getBytes () ar CharSet parametru

 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)); ) )

Rezultāts

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

Piezīme. Iepriekš minētajā programmā mēs esam importējuši java.nio.charset.Charsetlietošanai CharSet. Mēs esam importējuši Arraysklasi, lai drukātu baitu masīvu lasāmā formā.

3. getBytes () ar virknes parametru

Jūs varat arī norādīt kodēšanas veidu, getBytes()izmantojot virknes. Kad izmantojat getBytes()šādā veidā, kods jāiesaiņo mēģinājuma… ķeršanas blokā.

Piemērs: getBytes () ar virknes parametru

 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"); ) ) )

Rezultāts

 (74, 97, 118, 97) (-2, -1, 0, 74, 0, 97, 0, 118, 0, 97) java.io.UnsupportedEncodingException: UTF-34 kodēšana ir nepareiza

Piezīme. Mēs esam importējuši java.util.Arrays, lai drukātu baitu masīvu lasāmā formā. Tam nav nekāda sakara getBytes().

Interesanti raksti...