java字元位元組數組
『壹』 java中位元組數組與字元數組用法有什麼區別
額 最基本的區別就是一個存儲位元組一個存儲字元啊
所以你只要搞清楚位元組和字元的區別就好了
位元組(Byte):位元組是通過網路傳輸信息(或在硬碟或內存中存儲信息)的單位。位元組是計算機信息技術用於計量存儲容量和傳輸容量的一種計量單位,1個位元組等於8位二進制,它是一個8位的二進制數,是一個很具體的存儲空間。
字元:人們使用的記號,抽象意義上的一個符號。 '1', '中', 'a', '$', '¥', ……一個字元(1char = 2byte = 16bit)
詳情可以自己網路一下 位元組和字元的區別
『貳』 (java)如何獲取字元串的位元組數!
(java)如何獲取字元串的位元組數!, 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);
}
c# 獲取字元串的位元組數
C#截取字元串位元組數 代碼如下:
public int bytelenght(string str)
{
byte[] bytestr = System.Text.Encoding.Unicode.GetBytes(str);
int j = 0;
for (int i = 0; i < bytestr.GetLength(0); i++)
{
if (i % 2 == 0)
{
j++;
}
else
{
if (bytestr[i] > 0)
{
j++;
}
}
}
return j;
}
謝謝採納
c++ 怎樣獲取一串字元串的字元數,不是位元組數
定義一個字元數組,然後根據字元長度循環得到字元
比如char ch[20];
這個20可以用字元實際長度getlength()獲取
然後再循環獲取字元
ch[i]
c#求字元串的位元組數
其實用不著那麼復雜計算的。注意:C#中string.Length只是計算字元串「字元」的個數,不計算位元組;但是漢字兩個位元組+數字(英文字元)一個位元組,才是6個,簡單的代碼如下: byte[] bytes = Encoding.Default.GetBytes("1243我"); Default(根據自己究竟是漢字還是數字等,自動合理分配內存所需要的位元組空間)
Console.WriteLine(bytes.Length);
C#如何獲得存放字元串的位元組數組?
byte[] System.Text.Encoding.Default.GetBytes(string s)
如何計算一個Unicode字元串的位元組數
你就是一個byte一個byte讀取的吧?一個漢字兩個byte(不含surrogate情況),文件中存兩個byte,你從文件中讀取2個byte,就是這樣 查看原帖>>
java下字元串和位元組數組如何轉換?
strRead = String.ValueOf(strRead.toCharArray(), 0, byBuffer.length]); 2、字元串轉換成位元組數組 byte[] byBuffer = new byte[200]; byBuffer= strInput.getBytes();注意:如果字元串裡面含有中文,要特別注意,在android系統下,默認是UTF8編碼,一個中文字元相當於3個位元組,只有gb2312下一個中文相當於2位元組。
『叄』 java怎樣聲明字元數組
1. java中定義一個字元串數組方式如下,string類型和其他基本類型相似,創建數組有兩種方式:
String[] str={"AAA","BBB","CCC"};
String str[]={"AAA","BBB","CCC"};
2.推薦用ArrayList<String> strArray = new ArrayList<String> (); 比較靈活。
3.也可以寫為如下格式:class[] array; array = new class[number];其中前半句為聲明,後半句為初始化,初始化必須要讓編譯器知道大小,聲明的時候java是不分配內存的,只有創建的時候也就是new的時候才會分配內存。
(3)java字元位元組數組擴展閱讀:
1.數組是相同數據類型的元素的集合。
2.數組中的各元素的存儲是有先後順序的,它們在內存中按照這個先後順序連續存放在一起。
3.數組元素用整個數組的名字和它自己在數組中的順序位置來表示。例如,a[0]表示名字為a的數組中的第一個元素,a[1]代表數組a的第二個元素,以此類推。
4.對於VB的數組,表示數組元素時應注意:下標要緊跟在數組名後,而且用圓括弧括起來(不能用其他括弧)。下標可以是常量,變數,或表達式,但其值必須是整數。下標必須為一段連續的整數,其最小值成為下界,其最大值成為上界。不加說明時下界值默認為1。
『肆』 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中如何創建字元串數組
java中定義一個字元串數組方式如下:
1.String[] str={"AAA","BBB","CCC"};
2.String str[]={"AAA","BBB","CCC"};
string類型和其他基本類型相似,創建數組時,有上述兩種方式。
數組可以分為一維數組和二維數組;
一維數組的語法格式:
數組元素類型 數組名[ ]={數組元素的初值,。。。}
如: int sa[]={1,2,3}
二維數組聲明的語法格式:
數組元素類型 數組名[ ][ ]
如:int a[][]=new int [2[3]
都是一個原理的,自己換一下自己想要定義的數組類型就可以了。
字元串數組的創建:
String a =new String("Java");
不過推薦用ArrayList strArray = new ArrayList (); 比較靈活。