Java String getBytes () meetod kodeerib stringi baitide järjestusse ja salvestab selle baidimassiivi.
Stringi getBytes()
meetodi süntaks on järgmine:
string.getBytes() string.getBytes(Charset charset) string.getBytes(String charsetName)
Siin on string String
klassi objekt .
getBytes()
Meetod tagastab baidimassiivi.
1. getBytes () ilma parameetriteta
Kui te ei edasta ühtegi parameetrit, getBytes()
kodeerib string platvormi vaikemärki.
Näide: getBytes () ilma parameetriteta
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)); ) )
Väljund
(74, 97, 118, 97)
Märkus. Oleme kasutanud Arrays
ülaltoodud näites klassi baidimassiivi loetavas vormis printimiseks. Sellel pole midagi pistmist getBytes(
).
2. getBytes () CharSeti parameetriga
Need on CharSet
java keeles saadaval:
- UTF-8 - kaheksa-bitine UCS-i teisendusformaat
- UTF-16 - kuusteist-bitine UCS-i teisendusformaat
- UTF-16BE - kuusteist-bitine UCS-i teisendusformaat, suurte endide baitide järjestus
- UTF-16LE - kuusteist-bitine UCS-i teisendusformaat, väikeste endide baitide järjestus
- USA-ASCII - seitsmebitine ASCII
- ISO-8859-1 - ISO ladina tähestik nr 1
Näide: getBytes () CharSeti parameetriga
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)); ) )
Väljund
(74, 97, 118, 97) (-2, -1, 0, 74, 0, 97, 0, 118, 0, 97)
Märkus . Ülaltoodud programmis oleme importinud java.nio.charset.Charset
kasutamiseks CharSet
. Ja oleme Arrays
klassi importinud, et printida baidimassiivi loetavas vormis.
3. getBytes () stringiparameetriga
getBytes()
Stringide abil saate määrata ka kodeerimise tüübi . getBytes()
Sellisel viisil kasutamisel peate koodi pakkima proovimispüüdmisploki sisse.
Näide: stringi parameetriga 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"); ) ) )
Väljund
(74, 97, 118, 97) (-2, -1, 0, 74, 0, 97, 0, 118, 0, 97) java.io. ToetamataEncodingException: UTF-34 kodeering on vale
Märkus. Baidimassiivi loetavas vormis printimiseks oleme importinud java.util.Arrays. Sellel pole midagi pistmist getBytes()
.