ה מחלקת Java String getBytes() השיטה עושה את הקידוד של מחרוזת לרצף של בתים ושומרת אותה במערך של בתים.
חֲתִימָה
ישנן שלוש גרסאות של שיטת getBytes(). החתימה או התחביר של שיטת string getBytes() ניתנים להלן:
public byte[] getBytes() public byte[] getBytes(Charset charset) public byte[] getBytes(String charsetName)throws UnsupportedEncodingException
פרמטרים
charset / charsetName - השם של ערכת תווים שבה השיטה תומכת.
החזרות
רצף של בתים.
חריג זריקות
UnsupportedEncodingException: הוא נזרק כאשר ערכת התווים שהוזכרה אינה נתמכת על ידי השיטה.
יישום פנימי
public byte[] getBytes() { return StringCoding.encode(value, 0, value.length); }
מחלקת מחרוזת getBytes() דוגמה לשיטה
שיטת getBytes() ללא פרמטרים מקודדת את המחרוזת באמצעות ערכת התווים המוגדרת כברירת מחדל של הפלטפורמה, שהיא UTF - 8. שתי הדוגמאות הבאות מראות את אותו הדבר.
הפחתת פיתון
שם קובץ: StringGetBytesExample.java
public class StringGetBytesExample{ public static void main(String args[]){ String s1='ABCDEFG'; byte[] barr=s1.getBytes(); for(int i=0;i <barr.length;i++){ system.out.println(barr[i]); } }} < pre> <span> Test it Now </span> <p> <strong>Output:</strong> </p> <pre> 65 66 67 68 69 70 71 </pre> <h2>Java String class getBytes() Method Example 2</h2> <p> <strong>FileName:</strong> StringGetBytesExample2.java</p> <p>The method returns a byte array that again can be passed to the String constructor to get String.</p> <pre> public class StringGetBytesExample2 { public static void main(String[] args) { String s1 = 'ABCDEFG'; byte[] barr = s1.getBytes(); for(int i=0;i <barr.length;i++){ system.out.println(barr[i]); } getting string back s2="new" string(barr); system.out.println(s2); < pre> <span> Test it Now </span> <p> <strong>Output:</strong> </p> <pre> 65 66 67 68 69 70 71 ABCDEFG </pre> <h2>Java String class getBytes() Method Example 3</h2> <p>The following example shows the encoding into a different charset.</p> <p> <strong>FileName:</strong> StringGetBytesExample3.java</p> <pre> // Import statement import java.io.*; public class StringGetBytesExample3 { // main method public static void main(String argvs[]) { // input string String str = 'Welcome to JavaTpoint.'; System.out.println('The input String is : '); System.out.println(str + ' '); // inside try block encoding is // being done using different charsets try { 16 - bit UCS Transformation format byte[] byteArr = str.getBytes('UTF-16'); System.out.println('After converted into UTF-16 the String is : '); for (int j = 0; j <bytearr.length; 16 j++) { system.out.print(bytearr[j]); } system.out.println(' '); big endian byte order, - bit ucs transformation format byte[] bytearr1="str.getBytes('UTF-16BE');" system.out.println('after converted into utf-16be the string is : '); for (int j="0;" < bytearr1.length; system.out.print(bytearr1[j]); iso latin alphabet bytearr2="str.getBytes('ISO-8859-1');" iso-8859-1 bytearr2.length; system.out.print(bytearr2[j]); little bytearr3="str.getBytes('UTF-16LE');" utf-16le bytearr3.length; system.out.print(bytearr3[j]); catch (unsupportedencodingexception g) system.out.println('unsupported character set' + g); pre> <p> <strong>Output:</strong> </p> <pre> The input String is : Welcome to JavaTpoint. After converted into UTF-16 the String is : -2-10870101010809901110109010103201160111032074097011809708401120111010501100116046 After converted into UTF-16BE the String is : 0870101010809901110109010103201160111032074097011809708401120111010501100116046 After converted into ISO-8859-1 the String is : 871011089911110910132116111327497118978411211110511011646 After converted into UTF-16LE the String is : 8701010108099011101090101032011601110320740970118097084011201110105011001160460 </pre> <h2>Java String class getBytes() Method Example 4</h2> <p>The following example shows when the charset is not supported by the getBytes() method, UnsupportedEncodingException is thrown.</p> <p> <strong>FileName:</strong> StringGetBytesExample4.java</p> <pre> public class StringGetBytesExample4 { // main method public static void main(String argvs[]) { // input string String str = 'Welcome to JavaTpoint.'; System.out.println('The input String is : '); System.out.println(str + ' '); // encoding into UTF - 17 byte[] byteArr = str.getBytes('UTF-17'); System.out.println('After converted into UTF-17 the String is : '); for (int j = 0; j <bytearr.length; j++) { system.out.print(bytearr[j]); } < pre> <p> <strong>Output:</strong> </p> <pre> /StringGetBytesExample4.java:11: error: unreported exception UnsupportedEncodingException; must be caught or declared to be thrown byte[] byteArr = str.getBytes('UTF-17'); ^ 1 error </pre> <hr></bytearr.length;></pre></bytearr.length;></pre></barr.length;i++){></pre></barr.length;i++){>
מחלקת Java String getBytes() שיטה דוגמה 2
שם קובץ: StringGetBytesExample2.java
השיטה מחזירה מערך בתים ששוב ניתן להעביר לבנאי String כדי לקבל String.
public class StringGetBytesExample2 { public static void main(String[] args) { String s1 = 'ABCDEFG'; byte[] barr = s1.getBytes(); for(int i=0;i <barr.length;i++){ system.out.println(barr[i]); } getting string back s2="new" string(barr); system.out.println(s2); < pre> <span> Test it Now </span> <p> <strong>Output:</strong> </p> <pre> 65 66 67 68 69 70 71 ABCDEFG </pre> <h2>Java String class getBytes() Method Example 3</h2> <p>The following example shows the encoding into a different charset.</p> <p> <strong>FileName:</strong> StringGetBytesExample3.java</p> <pre> // Import statement import java.io.*; public class StringGetBytesExample3 { // main method public static void main(String argvs[]) { // input string String str = 'Welcome to JavaTpoint.'; System.out.println('The input String is : '); System.out.println(str + ' '); // inside try block encoding is // being done using different charsets try { 16 - bit UCS Transformation format byte[] byteArr = str.getBytes('UTF-16'); System.out.println('After converted into UTF-16 the String is : '); for (int j = 0; j <bytearr.length; 16 j++) { system.out.print(bytearr[j]); } system.out.println(\' \'); big endian byte order, - bit ucs transformation format byte[] bytearr1="str.getBytes('UTF-16BE');" system.out.println(\'after converted into utf-16be the string is : \'); for (int j="0;" < bytearr1.length; system.out.print(bytearr1[j]); iso latin alphabet bytearr2="str.getBytes('ISO-8859-1');" iso-8859-1 bytearr2.length; system.out.print(bytearr2[j]); little bytearr3="str.getBytes('UTF-16LE');" utf-16le bytearr3.length; system.out.print(bytearr3[j]); catch (unsupportedencodingexception g) system.out.println(\'unsupported character set\' + g); pre> <p> <strong>Output:</strong> </p> <pre> The input String is : Welcome to JavaTpoint. After converted into UTF-16 the String is : -2-10870101010809901110109010103201160111032074097011809708401120111010501100116046 After converted into UTF-16BE the String is : 0870101010809901110109010103201160111032074097011809708401120111010501100116046 After converted into ISO-8859-1 the String is : 871011089911110910132116111327497118978411211110511011646 After converted into UTF-16LE the String is : 8701010108099011101090101032011601110320740970118097084011201110105011001160460 </pre> <h2>Java String class getBytes() Method Example 4</h2> <p>The following example shows when the charset is not supported by the getBytes() method, UnsupportedEncodingException is thrown.</p> <p> <strong>FileName:</strong> StringGetBytesExample4.java</p> <pre> public class StringGetBytesExample4 { // main method public static void main(String argvs[]) { // input string String str = 'Welcome to JavaTpoint.'; System.out.println('The input String is : '); System.out.println(str + ' '); // encoding into UTF - 17 byte[] byteArr = str.getBytes('UTF-17'); System.out.println('After converted into UTF-17 the String is : '); for (int j = 0; j <bytearr.length; j++) { system.out.print(bytearr[j]); } < pre> <p> <strong>Output:</strong> </p> <pre> /StringGetBytesExample4.java:11: error: unreported exception UnsupportedEncodingException; must be caught or declared to be thrown byte[] byteArr = str.getBytes('UTF-17'); ^ 1 error </pre> <hr></bytearr.length;></pre></bytearr.length;></pre></barr.length;i++){>
מחלקת Java String getBytes() שיטה דוגמה 3
הדוגמה הבאה מציגה את הקידוד לתוך ערכת תווים אחרת.
שם קובץ: StringGetBytesExample3.java
// Import statement import java.io.*; public class StringGetBytesExample3 { // main method public static void main(String argvs[]) { // input string String str = 'Welcome to JavaTpoint.'; System.out.println('The input String is : '); System.out.println(str + ' '); // inside try block encoding is // being done using different charsets try { 16 - bit UCS Transformation format byte[] byteArr = str.getBytes('UTF-16'); System.out.println('After converted into UTF-16 the String is : '); for (int j = 0; j <bytearr.length; 16 j++) { system.out.print(bytearr[j]); } system.out.println(\' \'); big endian byte order, - bit ucs transformation format byte[] bytearr1="str.getBytes('UTF-16BE');" system.out.println(\'after converted into utf-16be the string is : \'); for (int j="0;" < bytearr1.length; system.out.print(bytearr1[j]); iso latin alphabet bytearr2="str.getBytes('ISO-8859-1');" iso-8859-1 bytearr2.length; system.out.print(bytearr2[j]); little bytearr3="str.getBytes('UTF-16LE');" utf-16le bytearr3.length; system.out.print(bytearr3[j]); catch (unsupportedencodingexception g) system.out.println(\'unsupported character set\' + g); pre> <p> <strong>Output:</strong> </p> <pre> The input String is : Welcome to JavaTpoint. After converted into UTF-16 the String is : -2-10870101010809901110109010103201160111032074097011809708401120111010501100116046 After converted into UTF-16BE the String is : 0870101010809901110109010103201160111032074097011809708401120111010501100116046 After converted into ISO-8859-1 the String is : 871011089911110910132116111327497118978411211110511011646 After converted into UTF-16LE the String is : 8701010108099011101090101032011601110320740970118097084011201110105011001160460 </pre> <h2>Java String class getBytes() Method Example 4</h2> <p>The following example shows when the charset is not supported by the getBytes() method, UnsupportedEncodingException is thrown.</p> <p> <strong>FileName:</strong> StringGetBytesExample4.java</p> <pre> public class StringGetBytesExample4 { // main method public static void main(String argvs[]) { // input string String str = 'Welcome to JavaTpoint.'; System.out.println('The input String is : '); System.out.println(str + ' '); // encoding into UTF - 17 byte[] byteArr = str.getBytes('UTF-17'); System.out.println('After converted into UTF-17 the String is : '); for (int j = 0; j <bytearr.length; j++) { system.out.print(bytearr[j]); } < pre> <p> <strong>Output:</strong> </p> <pre> /StringGetBytesExample4.java:11: error: unreported exception UnsupportedEncodingException; must be caught or declared to be thrown byte[] byteArr = str.getBytes('UTF-17'); ^ 1 error </pre> <hr></bytearr.length;></pre></bytearr.length;>
מחלקת Java String getBytes() שיטה דוגמה 4
הדוגמה הבאה מראה כאשר ערכת התווים אינה נתמכת על ידי שיטת getBytes(), UnsupportedEncodingException נזרק.
תמונות יישור css
שם קובץ: StringGetBytesExample4.java
public class StringGetBytesExample4 { // main method public static void main(String argvs[]) { // input string String str = 'Welcome to JavaTpoint.'; System.out.println('The input String is : '); System.out.println(str + ' '); // encoding into UTF - 17 byte[] byteArr = str.getBytes('UTF-17'); System.out.println('After converted into UTF-17 the String is : '); for (int j = 0; j <bytearr.length; j++) { system.out.print(bytearr[j]); } < pre> <p> <strong>Output:</strong> </p> <pre> /StringGetBytesExample4.java:11: error: unreported exception UnsupportedEncodingException; must be caught or declared to be thrown byte[] byteArr = str.getBytes('UTF-17'); ^ 1 error </pre> <hr></bytearr.length;>