導航:首頁 > 編程語言 > 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相關的資料

熱點內容
win10ksm伺服器地址 瀏覽:339
一元二次估演算法 瀏覽:925
一招讀懂源碼 瀏覽:126
為什麼蘋果ipad連接不上伺服器 瀏覽:927
可樂app怎麼用卡密 瀏覽:766
路由器如何打開dhcp伺服器地址 瀏覽:75
谷歌圖片怎麼搜索app 瀏覽:863
江蘇文件夾模具廠 瀏覽:464
安卓系統網線攔截怎麼關閉 瀏覽:31
伺服器和終端是什麼 瀏覽:516
換安卓蘋果照片怎麼弄回去 瀏覽:260
如何向ca中心申請伺服器 瀏覽:187
從java到Android 瀏覽:551
福建加密app哪個好用 瀏覽:382
opengl游戲編程徐明亮pdf 瀏覽:619
單片機row怎麼用 瀏覽:981
虛函數表與反編譯 瀏覽:134
網上的滴滴搶單app是怎麼做的 瀏覽:384
eve手游ios賬號怎麼登錄安卓的 瀏覽:622
linuxoracle12安裝教程 瀏覽:697