導航:首頁 > 編程語言 > bytesstringjava

bytesstringjava

發布時間:2022-09-02 16:30:12

『壹』 java中如何讓byte[]與string類型轉換後,保持不變

String.getBytes()是取決於本地預設編碼的,兩邊不一樣就抓瞎了。你這種情況其實是要傳byte[],這樣硬生生轉成String總覺得太危險,一般的做法是弄成比如Base64這樣的7bits編碼。現成的有sun.misc.BASE64Encoder和sun.misc.BASE64Decoder。

『貳』 java 怎麼把一個byte轉換成字元串

String str=new String(byte);
或者
String str=new String(byte,"字元集");
字元集一般有UTF-8、GBK等

『叄』 java 中怎麼將 byte 轉換為 string

byteb=65;
System.out.println(Byte.toString(b));
System.out.println(b+"");
System.out.println(newString(newbyte[]{b}));

『肆』 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字元串

給你舉個例子:
可以用這個方法:
public class ByteArrayDemo
{
public static void main(String[] args){
byte[] byArray=new byte[]{1,2,3,4,5};
String str1="";
for (byte element: byArray )
{
str1+=element;
}
System.out.println(str1);
}
}
如果數組里的數很多,用上面的方法會產生很多垃圾對象,執行效率低,可以用下面的方法,提高效率:
public class ByteArrayDemo
{
public static void main(String[] args){
byte[] byArray=new byte[]{1,2,3,4,5};
String str1="";
StringBuilder sb=new StringBuilder(str1);
for (byte element: byArray )
{
sb.append(String.valueOf(element));
}
str1=sb.toString();
System.out.println(str1);
}
}

『陸』 java中byte數組怎麼轉換成string類型

可以用String的構造方法String(byte[] bytes,int offset,int length),或者普通的構造方法String(byte[] bytes),用法如下:

publicclassByteArrayToString{

publicstaticvoidmain(String[]args){
byte[]bytes=newbyte[]{'a','b','c','d','e','f','g'};

byteArrayToString(bytes,null);//輸出abcdefg
byteArrayToString(bytes,"2");//輸出cdefg
}

(byte[]bytes,Stringoffset){

Stringstr="";
if(offset!=null){
str=newString(bytes,Integer.parseInt(offset),5);//這個方法可以精確的截取字元串
}else{
str=newString(bytes);//普通的字元串構造方法
}
System.out.println(str);
returnstr;
}

}

『柒』 java中怎麼將byte轉成string

是位元組數組轉 String
還是單純把byte 轉為 String
byte[] 轉 String,可以使用 String 的構造器:
String s = new String(bytes);
String s = new String(bytes,"UTF-8");

『捌』 java String(byte[] bytes, Charset charset)這個方法怎麼用寫個小例子

這個方法是把位元組數組轉為字元串用的,第一個參數是位元組數組,第二個參數是字元編碼。
比如:
byte[] bytes = new byte[1024];
new String(bytes,"UTF-8");
意思是把bytes數字按"UTF-8"的編碼方式轉成字元串。

『玖』 Java byte[]和String轉換問題

File file = new File("XXX\\XXX\\XXX.dat");
InputStream input = new FileInputStream(file);
ByteArrayOutputStream bytes = new ByteArrayOutputStream();
byte[] b = new byte[1024];
int ind = 0;
while((ind=input.read(b, 0, b.length))!=-1){
bytes.write(b, 0, ind);
}

byte[] result = bytes.toByteArray();
String str = new String(result);
System.out.println(str);

有這段代碼試試吧

『拾』 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" );
這樣所需要的位元組就有恢復了。

閱讀全文

與bytesstringjava相關的資料

熱點內容
gps處理演算法 瀏覽:594
什麼app可以和對象存錢 瀏覽:144
java字元串表達式計算 瀏覽:328
javacmd環境變數 瀏覽:49
電視上面找不到全民歌app怎麼辦 瀏覽:154
單片機中psw0 瀏覽:992
優酷視頻加密么 瀏覽:761
本地連接dos命令 瀏覽:204
雲伺服器怎麼上傳金幣房卡游戲 瀏覽:69
Python快遞管理可視化 瀏覽:417
java正則驗證數字 瀏覽:828
猴子網游安卓掃碼怎麼登錄 瀏覽:355
7天工作總結簡短程序員 瀏覽:60
手機號交易網站源碼 瀏覽:687
計算機演算法怎麼學 瀏覽:401
m2手環用什麼app才能用 瀏覽:227
應用伺服器打不開怎麼辦 瀏覽:538
釘釘安卓手機如何設置 瀏覽:559
加密思想迷宮圖片 瀏覽:403
怎麼關閉更新系統安卓 瀏覽:88