javabytestring轉換
⑴ java裡面byte數組和String字元串怎麼轉換
Java中byte數組轉換成string字元串可以直接使用string類的構造函數。而string轉byte數組,則可以使用string類型的getBytes()方法進行轉換,如下形式:
1、string 轉 byte[]
String str = "Hello";//聲明一個字元串
byte[] srtbyte = str.getBytes();//使用string類的getBytes方法進行轉換
2、byte[] 轉 string
byte[] srtbyte;//聲明一個byte位元組數組
String res = new String(srtbyte);//使用構造函數轉換成字元串
System.out.println(res);
也可以將byte轉換的時候,設定編碼方式相互轉換,如下代碼:
String str = "hello";
byte[] srtbyte = null;
try {
srtbyte = str.getBytes("UTF-8");//設定轉換的編碼格式
String res = new String(srtbyte,"UTF-8");
System.out.println(res);
} catch (UnsupportedEncodingException e) {//有可能會出現不能支持的編碼格式,捕捉異常。
e.printStackTrace();
}
⑵ java裡面byte數組和String字元串怎麼轉換
//String 轉 byte[]
String str = "Hello";
byte[] srtbyte = str.getBytes();
// byte[] 轉 String
String res = new String(srtbyte);
System.out.println(res);
//當然還有可以設定編碼方式的
String str = "hello";
byte[] srtbyte = null;
try {
srtbyte = str.getBytes("UTF-8");
String res = new String(srtbyte,"UTF-8");
System.out.println(res);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
⑶ 在java中,如何將byte轉為string
方法一:
String s = "fs123fdsa";//String變數
byte b[] = s.getBytes();//String轉換為byte[]
String t = new String(b);//bytep[]轉換為String
方法二:
String a;
byte b;
a=b+"";
這樣就把b的byte值給了字元串a。
這種方法也可以用來將數字==格式緩緩成字元串。
比如
int c;
String d;
d=c+"";
這樣就是把整數c轉換成了字元串d。
Java是一種可以撰寫跨平台應用程序的面向對象的程序設計語言。Java技術具有卓越的通用性、高效性、平台移植性和安全性,廣泛應用於PC、數據中心、游戲控制台、科學超級計算機、行動電話和互聯網,同時擁有全球最大的開發者專業社群。
⑷ java裡面byte數組和String字元串怎麼轉換
Java中byte數組轉換成string字元串可以直接使用string類的構造函數。而string轉byte數組,則可以使用string類型的getBytes()方法進行轉換,如下形式:
1、string 轉 byte[]
String str = "Hello";//聲明一個字元串
byte[] srtbyte = str.getBytes();//使用string類的getBytes方法進行轉換
2、byte[] 轉 string
byte[] srtbyte;//聲明一個byte位元組數組
String res = new String(srtbyte);//使用構造函數轉換成字元串
System.out.println(res);
也可以將byte轉換的時候,設定編碼方式相互轉換,如下代碼:
String str = "hello";
byte[] srtbyte = null;
try {
srtbyte = str.getBytes("UTF-8");//設定轉換的編碼格式
String res = new String(srtbyte,"UTF-8");
System.out.println(res);
} catch (UnsupportedEncodingException e) {//有可能會出現不能支持的編碼格式,捕捉異常。
e.printStackTrace();
}
⑸ java 裡面的string 和byte 怎麼互轉
1.string 轉 byte[]
byte[] midbytes=isoString.getBytes("UTF8");
//為UTF8編碼
byte[] isoret = srt2.getBytes("ISO-8859-1");
//為ISO-8859-1編碼
其中ISO-8859-1為單位元組的編碼
2.byte[]轉string
String isoString = new String(bytes,"ISO-8859-1");
String srt2=new String(midbytes,"UTF-8");
說明:
在網路傳輸或其它應用中常常有同一的中間件,假設為String類型。因此需要把其它類型的數據轉換為中間件的類型。
將字元串進行網路傳輸時,如socket,需要將其在轉換為byte[]類型。這中間如果採用用不同的編碼可能會出現未成預料的問題,如亂碼。
下面舉個例子:
我們用socket傳輸String類型的數據時,常常用UTF-8進行編碼,這樣比較可以避免一個「中文亂碼」的問題。
發送端:
String sendString="發送數據";
byte[] sendBytes= sendString .getBytes("UTF8");
.......socket發送
接受端:
String recString=new String( sendBytes ,"UTF-8");
但是,這里往往又會出現這樣一個問題。就是想要發送的數據本身就是byte[]類型的。
如果將其通過UTF-8編碼轉換為中間件String類型就會出現問題
如:
byte[] bytes = new byte[] { 50, 0, -1, 28, -24 };
String sendString=new String( bytes ,"UTF-8");
byte[] sendBytes= sendString .getBytes("UTF8");
然後再發送
接受時進行逆向轉換
String recString=new String( sendBytes ,"UTF-8");
byte[] Mybytes=isoString.getBytes("UTF8");
這時Mybytes中的數據將是[50, 0, -17, -65, -67, 28, -17, -65, -67]
因此,需要採用單位元組的編碼方式進行轉換
String sendString=new String( bytes ,"UTF-8"); 改為 String sendString=new String( bytes , "ISO-8859-1" );
byte[] Mybytes=isoString.getBytes("UTF8"); 改為 byte[] Mybytes=isoString.getBytes( "ISO-8859-1" );
這樣所需要的位元組就有恢復了。
⑹ java裡面byte數組和String字元串怎麼轉換
String類提供了一些接受位元組數組作為參數的構造函數,比如:
public String(byte[] bytes)
public String(byte[] bytes,Charset charset)
public String(byte[] bytes,int offset,int length)
等,可以將byte數組轉換為String。
同時,String類還重載了getBytes方法,可以將String轉換為byte數組,比如:
public byte[] getBytes()
public byte[] getBytes(Charset charset)等。
⑺ java裡面byte數組和String字元串怎麼轉換
Java中byte數組轉換成string字元串可以直接使用string類的構造函數。而string轉byte數組,則可以使用string類型的getBytes()方法進行轉換,如下形式:
1、string轉byte[]
Stringstr="Hello";//聲明一個字元串
byte[]srtbyte=str.getBytes();//使用string類的getBytes方法進行轉換
2、byte[]轉string
byte[]srtbyte;//聲明一個byte位元組數組
Stringres=newString(srtbyte);//使用構造函數轉換成字元串
System.out.println(res);
也可以將byte轉換的時候,設定編碼方式相互轉換,如下代碼:
Stringstr="hello";
byte[]srtbyte=null;
try{
srtbyte=str.getBytes("UTF-8");//設定轉換的編碼格式
Stringres=newString(srtbyte,"UTF-8");
System.out.println(res);
}catch(UnsupportedEncodingExceptione){//有可能會出現不能支持的編碼格式,捕捉異常。
e.printStackTrace();
}
⑻ java裡面byte數組和String字元串怎麼轉換
java中的String不屬於基本數據類型,字元串是有一個個的字元組成的,字元數組就是字元串,因此,JDK提供了如下轉換方法:
1.byte[]轉換成String:
Stringstr=newString(byte[]bytes);
2.String轉換成byte[]:
byte[]dataArray="HelloWorld!".getBytes();
以上便是jdk的String工具類提供的轉換方法。
⑼ java裡面byte數組和String字元串怎麼轉換
byte數組轉換成String可以調用String的參數為byte數組的構造方法,代碼如下:String res = new String(byte);
String轉換成byte數組可以調用String的getByte方法,代碼如下:byte[] srtbyte = str.getBytes();