java字元位元組
① java中一個字元到底多少個位元組
字元 不等於 位元組。
字元(char)是 Java 中的一種基本數據類型,由 2 個位元組組成,范圍從 0 開始,到 2^16-1。
位元組是一種數據量的單位,一個位元組等於 8 位。所有的數據所佔空間都可以用位元組數來衡量。例如一個字元占 2 個位元組,一個 int 占 4 個位元組,一個 double 占 8 個位元組 等等。
② java里位元組和字元分別是什麼概念,怎麼區別
這不光是 Java 的概念,我們知道機器只知道位元組,而字元卻是語義上的單位,它是有編碼的,一個字元可能編碼成1個2個甚至3個4個位元組。這跟字元集編碼有關系,英文字母和數字是單位元組,但漢字這些自然語言中的字元是多位元組的。一個位元組只能表示255個字元,不可能用於全球那麼多種自然語言的處理,因此肯定需要多位元組的存儲方式。
當我們在處理 Java 時,比如 InputStream, OutputStream 它們是處理位元組流的,就是說假設所有東西都是二進制的位元組,而 Reader, Writer 則是字元流,它涉及到字元集的問題,因為把一個字元保存到磁碟或讀取出來需要指定一個字元集,平時你的代碼沒有指定是因為 JVM 讀取操作系統默認的字元集,有時候(特別是數據交換的時候)可能這個默認字元集不正確。
在 Java 中,它的內核是使用 Unicode,也就是說它記住了每個字元的 Unicode 內部編碼(一串數字,全球唯一,各國語言常用字元全部在裡面,比如康熙字典這種古董中的多數漢字都在其中),只有把字元串通過網路發送出去或保存到磁碟上或反過來讀取時才有字元編碼成位元組的過程,因為一個字元多個位元組我們需要知道每個字元的這幾個位元組是按什麼順序排列的,第1個位元組排前面還是排後面,多個字元串在一起時在讀取時怎麼識別出哪幾個位元組湊在一起是一個字元,這就是字元集編碼方案了,UTF8, GBK, GB2312, GB18030, BIG5,之類的都是其中一種字元集編碼方案。
③ java 位元組是什麼字元又是什麼
僅限於java unicode編碼情況下
位元組:byte 1位元組 8位 屬於整型 范圍-128到127
字元:char 2位元組 16位
④ java一個漢字占幾個位元組
1、首先,定義好主類程序,並為程序添加main程序入口。
⑤ java中一個字元是幾個位元組字元和位元組是同等的嗎
Java規定了字元的內碼要用UTF-16編碼,一個字元是2個位元組。外碼字元所佔位元組取決於具體編碼。字元和位元組是不一樣的。
外碼編碼不同,字元和位元組的換算不同,幾種常見的編碼換算如下:
ASCII編碼是單位元組編碼,只有英文字元,不能編碼漢字。
GBK編碼1個英文字元是1個位元組,一個漢字是是2個位元組。
UTF-8編碼1個英文字元是1個位元組,一個漢字是3個位元組。
Unicode編碼1個英文字元是2個位元組,一個漢字是2個位元組。
(5)java字元位元組擴展閱讀:
漢字編碼的困難點 漢字進入計算機,有許多困難,其原因主要有三點:
①數量龐大:一般認為,漢字總數已超過6萬個(包括簡化字)。雖有研究者主張規定3000多或4000字作為當代通用漢字,但仍比處理由二三十個字母組成的拼音文字要困難得多。
②字形復雜:有古體今體,繁體簡體,正體異體;而且筆畫相差懸殊,少的一筆,多的達36筆,簡化後平均為9.8筆。
③存在大量一音多字和一字多音的現象:漢語音節416個,分聲調後為1295個(根據《現代漢語詞典》統計,輕聲39個未計)。以1萬個漢字計算,每個不帶調的音節平均超過24個漢字,每個帶調音節平均超過7.7個漢字。有的同音同調字多達66個。一字多音現象也很普遍。
⑥ (java)如何獲取字元串的位元組數!
字元串是可以轉變成位元組數組,然後統計一下位元組數組的長度即可,參考如下代碼:
Java語言中,中文字元所佔的位元組數取決於字元的編碼方式,一般情況下,採用ISO8859-1編碼方式時,一個中文字元與一個英文字元一樣只佔1個位元組;採用GB2312或GBK編碼方式時,一個中文字元佔2個位元組;而採用UTF-8編碼方式時,一個中文字元會佔3個位元組。
public static void main(String []args) throws UnsupportedEncodingException {
// 運行結果:2
System.out.println("測試".getBytes("ISO8859-1").length);
// 運行結果:4
System.out.println("測試".getBytes("GB2312").length);
// 運行結果:4
System.out.println("測試".getBytes("GBK").length);
// 運行結果:6
System.out.println("測試".getBytes("UTF-8").length);
}
⑦ Java中文字元所佔的位元組數是多少
採用GB2312或GBK編碼方式時,一個中文字元佔2個位元組;而採用UTF-8編碼方式時,一個中文字元會佔3個位元組。
⑧ Java 字元串轉化為位元組
string型轉byte 要怎麼轉 有兩種方式
getBytes()
使用平台默認的字元集將此 String 解碼為位元組序列,並將結果存儲到一個新的位元組數組中。返回byte[]
getBytes(String charsetName)
使用指定的字元集將此 String 解碼為位元組序列,並將結果存儲到一個新的位元組數組中。返回
byte[]
你那樣寫是可以的 不過 你需要保證你的機器8001這個埠開放才能正常運行 我給你寫了一個測試類
public class T {
public static void main(String[] args) throws IOException
{
Socket s = new Socket(InetAddress.getByName("127.0.0.1"),80);
System.out.println(s);
}
}
⑨ java中的字元串佔多少位元組
要看字元串長度一個字元2位元組
比如
Stringstr="abc";
str有三個字元佔6個位元組
⑩ 計算java字元串的位元組的長度
publicstaticvoidmain(String[]args)
{
Stringss="hel無此數lo";
byte[]buff=ss.getBytes();
intf=buff.length;
System.out.println(f);
}
可參閱http://blog.csdn.net/xiaoyu714543065/article/details/7380191