Java String getBytes ()

Metode getBytes () String Java mengenkode string menjadi urutan byte dan menyimpannya dalam array byte.

Sintaks dari getBytes()metode String adalah:

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

Di sini, string adalah objek Stringkelas.

The getBytes()Metode mengembalikan sebuah array byte.

1. getBytes () Tanpa Parameter Apa Pun

Jika Anda tidak meneruskan parameter apa pun, getBytes()enkode string menggunakan charset default platform.

Contoh: getBytes () Tanpa Parameter Apa Pun

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

Keluaran

 (74, 97, 118, 97)

Catatan: Kami telah menggunakan Arrayskelas dalam contoh di atas untuk mencetak array byte dalam bentuk yang dapat dibaca. Ini tidak ada hubungannya dengan getBytes().

2. getBytes () Dengan Parameter CharSet

Berikut adalah perbedaan yang CharSettersedia di java:

  • UTF-8 - Format Transformasi UCS delapan-bit
  • UTF-16 - Format Transformasi UCS enam belas bit
  • UTF-16BE - Format Transformasi UCS enam belas-bit, urutan byte big-endian
  • UTF-16LE - Format Transformasi UCS enam belas-bit, urutan byte little-endian
  • US-ASCII - ASCII tujuh-bit
  • ISO-8859-1 - ISO Latin Alphabet No.1

Contoh: getBytes () Dengan Parameter CharSet

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

Keluaran

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

Catatan: Dalam program di atas, kami telah mengimpor java.nio.charset.Charsetuntuk digunakan CharSet. Dan, kami telah mengimpor Arrayskelas untuk mencetak array byte dalam bentuk yang dapat dibaca.

3. getBytes () Dengan Parameter String

Anda juga dapat menentukan jenis pengkodean untuk getBytes()menggunakan string. Ketika Anda menggunakan getBytes()cara ini, Anda harus membungkus kode di dalam blok try… catch.

Contoh: getBytes () Dengan Parameter String

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

Keluaran

 (74, 97, 118, 97) (-2, -1, 0, 74, 0, 97, 0, 118, 0, 97) java.io.UnsupportedEncodingException: encoding UTF-34 salah

Catatan: Kami telah mengimpor java.util.Arays untuk mencetak array byte dalam bentuk yang dapat dibaca. Ini tidak ada hubungannya dengan getBytes().

Artikel yang menarik...