導航:首頁 > 編程語言 > char數組轉byte數組java

char數組轉byte數組java

發布時間:2022-11-25 02:13:51

java中如何將字元串轉換成位元組數組

* UTF-8 一個漢字佔三個位元組*/private static String CHAR_ENCODE = "UTF-8";/*** 設置全局的字元編碼 * @param charEncode*/public static void configCharEncode(String charEncode){ CHAR_ENCODE = charEncode;}/*** @param str 源字元串轉換成位元組數組的字元串* @return*/public static byte[] StringToByte(String str) { return StringToByte(str,CHAR_ENCODE);}/**** @param srcObj 源位元組數組轉換成String的位元組數組* @return*/public static String ByteToString(byte[] srcObj) { return ByteToString(srcObj,CHAR_ENCODE);}/*** UTF-8 一個漢字佔三個位元組 * @param str 源字元串 * 轉換成位元組數組的字元串* @return*/public static byte[] StringToByte(String str,String charEncode) { byte[] destObj = null;try {if(null == str || str.trim().equals("")){ destObj = new byte[0];

⑵ 在C++里怎麼把char數組轉換成byte數組

char和byte都是8位。char默認是signed還是unsigned看編譯器,一般是signed也就是有符號char類型,范圍為0-127.它的最高位是不用的,為0.
byte范圍0-255,。所以char轉byte直接強制類型轉換就可以,不會丟失數據

⑶ 在java里,char,int,byte之間的關系還有他們之間的轉換

無任何關系 char 是字元 int 是數字 byte 是位元組數據 char 和 int 可以相互轉換(按照ascii碼數值) byte 雖然也可以轉換,但是無意義

採納哦

⑷ 在java中如何將全為數字的字元串轉化為byte數組

public class DigitsString{
public static void main(String[] args){
String s="99999";
byte[] bytes=s.getBytes();
for(int i=bytes.length-1;i>=0;i--){
bytes[i]-=(byte)'0';
}
for(int i=0;i<bytes.length;i++){
System.out.print(bytes[i]);
}
System.out.println();
}
}
一樓二樓的位元組數組中元素的值不是對應數位的值,是數位的ASCII碼,根本不符合題意

⑸ java char,byte移位操作時的類型轉換。

int類型數據4位元組32位
int 數據 >> 數值右端
所以數值右端范圍是(0-31)00000-11111
所有隻有右端數值的低5位有用
例子
int類型數據3(0.....0011)
3 >> 33 表示 3右移33位(100001)
但是3是int類型,只有32位,右移數值只有低5位有用
3 >> 33 相當於 3 >> 1 結果是 1

⑹ Java中怎麼把一個中文字元char轉換成byte

1、中文一個字是兩個char,即是String類型。
2、String只能轉為byte[]數組,方法是調用其getBytes()方法。

⑺ java裡面的char和byte怎麼轉換

java中,char轉化為byte的話,可以用參考如下方法:
String s=new String("1");
byte[] b=new byte[1];
b[0] = Byte.parseByte(""+s.charAt(0));
System.out.println(b[0]);
結果為:1,而不是ascii碼的值了。

⑻ java中如何將字元串轉化成特定長度的位元組數組

publicclassTest{
publicstaticvoidmain(String[]args){
byte[]byteArray="Test".getBytes();
byte[]byteArray2="測試".getBytes();
System.out.println("byteArray.length="+byteArray.length);
System.out.println("byteArray2.length="+byteArray2.length);

for(inti=0;i<byteArray.length;i++)
System.out.print((char)byteArray[i]);
System.out.println();
for(inti=0;i<byteArray2.length;i++)
System.out.print((char)byteArray2[i]);
}
}

漢字2個位元組編碼,1個漢字轉換成2bytes

⑼ java 中,char 數組轉換成 byte數組(急,在線等)

package com.example.lib;
import java.io.FileInputStream;
import java.io.IOException;
import java.nio.ByteBuffer;
import java.nio.*;
import java.nio.charset.Charset;

public class MyClass {
public static void main(String[] args) throws IOException {
FileInputStream fs; //定義流對象變數
fs = new FileInputStream("/Users/mac/AndroidStudioProjects/MyApplication/lib/src/main/java/com/example/lib/mytext.txt");
byte[] bytes = new byte[fs.available()]; //定義接收數據的位元組數組,並用流對象初始化數組大小
fs.read(bytes); //裝載數據
char[] w = getChars(bytes);//將位元組數組轉化為字元數組,注意數組末尾會有空字元
String s = new String(w); //利用字元串構造函數來構造字元串,
System.out.println("結果為:"+s.trim());輸出時,去掉末尾空格字元
}

private static byte[] getBytes (char[] chars) {
Charset cs = Charset.forName ("UTF-8");//設定字元集編碼代號
CharBuffer cb = CharBuffer.allocate (chars.length);//按照字元數組長度進行分配空間
cb.put (chars); //裝載數據
cb.flip (); //指針復位
//按照編碼規則進行編碼
ByteBuffer bb = cs.encode (cb);
return bb.array();
}

private static char[] getChars (byte[] bytes) {
Charset cs = Charset.forName ("UTF-8");//指定字元集編碼
ByteBuffer bb = ByteBuffer.allocate (bytes.length);
bb.put (bytes);//裝載數據
bb.flip ();//調整回指針為0
CharBuffer cb = cs.decode (bb);//按照指定字元集進行解碼
return cb.array();//返回字元數組
}
}

閱讀全文

與char數組轉byte數組java相關的資料

熱點內容
下班之後的程序員 瀏覽:69
檢測支持ssl加密演算法 瀏覽:340
衢州發布新聞什麼APP 瀏覽:82
中國移動長沙dns伺服器地址 瀏覽:249
wifi密碼加密了怎麼破解嗎 瀏覽:596
linux命令cpu使用率 瀏覽:67
linux實用命令 瀏覽:238
傳奇引擎修改在線時間命令 瀏覽:109
php取域名中間 瀏覽:897
cad命令欄太小 瀏覽:830
php開發環境搭建eclipse 瀏覽:480
qt文件夾名稱大全 瀏覽:212
金山雲伺服器架構 瀏覽:230
安卓系統筆記本怎麼切換系統 瀏覽:618
u盤加密快2個小時還沒有搞完 瀏覽:93
小米有品商家版app叫什麼 瀏覽:94
行命令調用 瀏覽:436
菜鳥裹裹員用什麼app 瀏覽:273
窮查理寶典pdf下載 瀏覽:514
csgo您已被禁用此伺服器怎麼辦 瀏覽:398