⑴ java byte 數組里存的是ascii碼,怎麼轉成字元串
byte[]b=newbyte[]{65,66,67,68};//位元組數組
Strings=newString(b,"ascii");//第二個參數指定編碼方式
System.out.print(s);
⑵ Java中char到底是多少位元組
一個char佔多少位元組是跟字元集編碼有關的,unicode編碼中一個char占兩個位元組,java 是用unicode編碼。但是常見的資料庫中可能被設置為用utf-8,而utf-8一個字元佔用的位元組長度可能是一個字元、兩個字元或三個字元,英文字元abc佔用一個位元組,中文字元佔用三個位元組。UTF8編碼的字元中,第一個位元組ASCII值大於等於224的,其與之後的2個位元組一起組成一個UTF8字元,第一個位元組ASCII值大於192等於小於224的,其與之後的1個位元組組成一個UTF-8字元,第一個位元組ASCII值小於192的,其本身成為一個UTF8字元。
⑶ 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)javabyteascii擴展閱讀:
反過來,將Byte數組轉化為String的方法
using
System;
using
System.Text;
public
static
string
FromASCIIByteArray(byte[]
characters)
{
ASCIIEncoding
encoding
=
new
ASCIIEncoding(
);
string
constructedString
=
encoding.GetString(characters);
return
(constructedString);
}
·