『壹』 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怎麼將string轉換成byte數組
思路:先定義字元串,再通過getBytes()方法進行轉換數組就可以了。
參考代碼:
Strings="ZhiDao";//定義字元串
byte[]sb=s.getBytes();//把字元串轉換成數組
String的getBytes()方法是得到一個系統默認的編碼格式的位元組數組。將一個String類型的字元串中包含的字元轉換成byte類型並且存入一個byte[]數組中。
『叄』 java中String類型的如何轉為byte[]
一、String轉byte數組簡單版:
1、String
str
=
"abcd";
2、byte[]
bs
=
str.getBytes();
二、復雜版
//
pros
-
no
need
to
handle
UnsupportedEncodingException
//
pros
-
bytes
in
specified
encoding
scheme
byte[]
utf8
=
"abcdefgh".getBytes(StandardCharsets.UTF_8);
System.out.println("length
of
byte
array
in
UTF-8
:
"
+
utf8.length);
System.out.println("contents
of
byte
array
in
UTF-8:
"
+
Arrays.toString(utf8));
Output
:
length
of
byte
array
in
UTF-8
:
8
contents
of
byte
array
in
UTF-8:
[97,
98,
99,
100,
101,
102,
103,
104]1
(3)java字元串轉byte數組擴展閱讀:
反過來,將Byte數組轉化為String的方法
using
System;
using
System.Text;
public
static
string
FromASCIIByteArray(byte[]
characters)
{
ASCIIEncoding
encoding
=
new
ASCIIEncoding(
);
string
constructedString
=
encoding.GetString(characters);
return
(constructedString);
}
·
『肆』 java怎麼將這個字元串轉成byte
importjava.util.Arrays;
publicclassTest{
publicstaticvoidmain(String[]args){
Stringtext="1222334423";
String[]split=text.split("");
byte[]bytes=newbyte[split.length];
for(inti=0;i<bytes.length;i++){
bytes[i]=(byte)Integer.parseInt(split[i]);
}
System.out.println(Arrays.toString(bytes));
}
}
『伍』 java怎麼把char轉換成byte數組
1、位元組數組轉換為字元串
byte[]
byBuffer
=
new
byte[20];
String
strRead
=
new
String(byBuffer);
strRead
=
String.ValueOf(strRead.toCharArray(),
0,
byBuffer.length]);
2、字元串轉換成位元組數組
byte[]
byBuffer
=
new
byte[200];
String
strInput=abcdefg;
byBuffer=
strInput.getBytes();
注意:如果字元串裡面含有中文,要特別注意,在android系統下,默認是UTF8編碼,一個中文字元相當於3個位元組,只有gb2312下一個中文相當於2位元組。這種情況下可採取以下辦法:
『陸』 字元串轉byte數組 java
8b =139怎麼超出范圍了.只不過代表一個負值而已
看代碼,粘貼到類直接運行
public static void main(String[] args) {
String aa = "4c 00 3a 02 00 03 0a 8b";
if(aa == null || aa.length() <= 0) {
System.out.println("aa沒有值");
return;
}
Pattern p = Pattern.compile("[^\\da-fA-F\\s]");
Matcher m = p.matcher(aa);
if(m.find()) {
System.out.println("aa非法字元");
return;
}
String[] bb = aa.split("\\s");
byte[] cc = new byte[bb.length];
for(int i = cc.length; i-- > 0;) {
cc[i] = Integer.valueOf(bb[i], 16).byteValue();
System.out.println("cc[" + i + "]=" + cc[i] + " \tbb[" + i + "]=" + bb[i]);
}
}
『柒』 java裡面byte數組和String字元串怎麼轉換
byte數組轉換成String可以調用String的參數為byte數組的構造方法,代碼如下:String res = new String(byte);
String轉換成byte數組可以調用String的getByte方法,代碼如下:byte[] srtbyte = str.getBytes();
『捌』 java中如何將字元串轉換成位元組數組
package com.sunjing.util;
import java.io.UnsupportedEncodingException;
/**
* 將Byte轉換為String 或者將String轉換為Byte
*
* @author Administrator
*
*/
public class ByteOrStringHelper {
/**
* 默認的字元集編碼
* 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];
return destObj;
}else{
destObj = str.getBytes(charEncode);
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return destObj;
}
/**
* @param srcObj 源位元組數組轉換成String的位元組數組
* @return
*/
public static String ByteToString(byte[] srcObj,String charEncode) {
String destObj = null;
try {
destObj = new String(srcObj,charEncode);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return destObj.replaceAll("\0"," ");
}
}
『玖』 如何將字元串轉換為ByteArray
java裡面byte數組和String字元串轉換有兩種方法:
1、不設定編碼方式
<prename="code"class="java">Stringstr="Hello";
byte[]srtbyte=str.getBytes();//string轉byte[]
//s
Stringres=newString(srtbyte);//byte[]轉string
2、設定編碼方式
Stringstr="hello";
byte[]srtbyte=null;
try{
srtbyte=str.getBytes("UTF-8");//string轉byte[]
Stringres=newString(srtbyte,"UTF-8");//byte[]轉string
}catch(UnsupportedEncodingExceptione){
e.printStackTrace();
}
Java是一種可以撰寫跨平台應用程序的面向對象的程序設計語言。Java技術具有卓越的通用性、高效性、平台移植性和安全性,廣泛應用於PC、數據中心、游戲控制台、科學超級計算機、行動電話和互聯網,同時擁有全球最大的開發者專業社群。
Java 編程語言的風格十分接近C、C++語言。Java是一個純的面向對象的程序設計語言,它繼承了 C++ 語言面向對象技術的核心,Java舍棄了C ++語言中容易引起錯誤的指針(以引用取代)、運算符重載(operator overloading)、多重繼承(以介面取代)等特性,增加了垃圾回收器功能用於回收不再被引用的對象所佔據的內存空間,使得程序員不用再為內存管理而擔憂。在 Java SE 1.5 版本中,Java 又引入了泛型編程(Generic Programming)、類型安全的枚舉、不定長參數和自動裝/拆箱等語言特性。
『拾』 java中的字元串轉為byte類型怎麼轉
String類有提供好的方法啊,getBytes()
getBytes
public byte[] getBytes(Charset charset)
使用給定的 charset 將此 String
編碼到 byte 序列,並將結果存儲到新的 byte 數組。
此方法總是使用此字元集的默認替代 byte 數組替代錯誤輸入和不可映射字元序列。如果需要對編碼過程進行更多控制,則應該使用 CharsetEncoder
類。
參數:
charset - 用於編碼 String 的 Charset
返回:
所得 byte 數組
從以下版本開始:
1.6