已采納回答 / 早飯荷包蛋
第一個問題:<...圖片...>????我查看這個函數,read的返回值是the next byte of data,很明顯,是下個讀到的字節;第二個問題:????bos是輸出流,bos.write()就是將數據寫到輸出流,有什么問題嗎?????就像bis是輸入流,bos.read()將數據讀入輸入了流;????bis是一個桶,bos又是另一個桶,明白了嗎,不懂繼續追問
2016-02-01
已采納回答 / 高原火狐貍
這點說的我也有些暈。我理解是:一共有A(源文件)、B(程序)、C(目標文件)三個桶,A裝滿了水,B、C都是空的,要把A的水通過B桶全部轉移到C桶。單字節:一瓢一瓢從A舀水到B桶,再從B桶一瓢瓢舀水到C桶;緩沖讀取:一瓢一瓢從A舀水到B桶,將B桶水直接倒入C桶;比單字節快一點;批量讀取:直接從A桶倒水進B桶,再從B桶倒水進C桶;最快。從最后性能對比看,應該是這樣的,老師解釋的時候沒有把B桶說太明確。
2016-02-01
已采納回答 / dabo
這是正確的,數字以字節寫到你的文件,直接打開文件,編輯器會將數據根據字符集顯示為文字,而你的數字對應不上字符集中的文字,所以顯示亂碼。原理和用notepad 打開一個*.exe文件亂碼一樣
2016-01-30
已采納回答 / 孤寂0123
betys=in.read(buf,0,buf.length),讀取信息內容的時候,將信息暫時存入buf數組,一次性讀不完的,會將讀取到的信息的buf數組循環釋放的,然后再繼續存入buf數組,繼續釋放------我是這樣想的,僅供參考
2016-01-08
已采納回答 / chrt
java默認的編碼方式是unicode big endian,即大端存儲方式的unicode,具體數據的高位字節存放在低位地址上。關于大端模式和小端模式可以進一步百度。
2016-01-06
已采納回答 / Its_forever
Java 中的一個byte,其范圍是-128~127的,如果不進行&0xff,那么當一個byte會轉換成int時,對于負數,會做位擴展,舉例來說,一個byte的-1(即0xff),會被轉換成int的-1(即0xffffffff ), 那么轉化出的結果就不是我們想要的了。?而0xff默認是整形,所以,一個byte跟0xff相與會先將那個byte轉化成整形運算,結果的高24位就會被清0,這是我們想要的結果。?看看這篇博客吧,http://makemyownlife.iteye.com/blog/104...
2016-01-04
已采納回答 / Its_forever
那三個文件,保存的時候都是用的ANSI編碼,記事本默認編碼,可以新建一個記事本直接另存為,看看他的編碼格式就知道啦。只是打開的時候,由于聯通二字的ASNI編碼為:FF FE 6A 00 68 03 ,UTF-8編碼為:FF FE 54 80 1A 90。 因為都是FF FE 開頭的,記事本不能判斷你保存時的編碼標準,只能“猜測”你保存的時候的編碼標準,因為聯通二字的ANSI編碼正好是以“FF FE”開頭的,這樣以ANSI編碼(筆記本默認編碼)保存以后再次打開,記事本首先檢測到“FF FE”,就認為是UTF...
2016-01-03
最贊回答 / 天涯蝶舞
0x表示16進制,16進制用0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F來表示,一個字節用16進制表示就一個兩位或一位的數,例如a,0f,af,ae,3b,e,c等,其中一位的可以補0,例如0a,0e,0c。當只有一位時,f就說最大的,所以只要比16進制的f小或相等,一個字節轉換為16進制就一定只有一位,這個時候就需要對其補0才能使兩位數,所以表示為b <= 0xf
2015-12-22
已采納回答 / 不再是石頭
個人認為你理解出現誤區了,c4 bd bf ce 41 42 43是16進制的表示方法,c4 bd在計算機中是按1100 0100,1011 1101存儲的,一個字節是8位;c4 bd bf ce 41 42 43一共是7個字節,你說的8個字節是不是說一個字節應該有8位,1Byte=8bit
2015-12-15
已采納回答 / RockenRoll
當一個類實現了Serializable接口,表示該類可以序列化.序列化的目的是將一個實現了Serializable接口的對象轉換成一個字節序列
2015-12-14