已采納回答 / 慕粉3549847
老師的這句話沒毛病,只是說分情況而言!?1個漢字 = 1個字 = 1個字符?1個字符 = 1個字節 = 8bit(ACSII碼下)?1個字符 = 2個字節 = 16bit(Unicode碼下)
2017-01-13
已采納回答 / KeT
這個while循環就是為了讀取完要讀取的東西。同時也像你說的為了防止它為空。而且,按照正常情況,buf是字節數組,應該是1024字節的倍數吧,有時候一次讀不完,所以用個while循環來判定。望采納,謝謝。
2017-01-09
已采納回答 / Jathy
在Windows中后綴名,比如.dat .wmv .mp3.通過后綴名來區分不同的文件類型,進而讓計算機知道用什么軟件來打開,但對于讀取文件因為都是byte的內容,不需要任何軟件進行識別,只是簡單讀取,所以以什么后綴名結尾其實沒那么重要,哪怕是 .zhebushihouzuiming 也可進行讀取。以上只是個人觀點,如有錯誤希望指正! ^.^
2017-01-09
已采納回答 / 2012還是1984
都是IO包下的類,如果這個沒有,那么其他的也會沒有。你看看是不是沒有導入包:import java.io.ObjectInputStream;
2017-01-09
已采納回答 / 慕粉4143473
原因:顯示紅色感嘆號是因為jar包的路徑不對解決:在項目上右擊Build Path?->?Configure Build Paht...(或Propertise->Java?Build Path),在JavaBuild Path中Libraries,紅色叉號的包為路徑錯誤的包。處理好后返回刷新工程即可,這個問題一般是導入別人的項目或之前的一些JAR包移動了它的存儲位置。
2017-01-08
已采納回答 / 我是菁粉
老師講解時,都是實例化子類對象的,因為子類對象已經實例化過的,所以不會報錯,如果此時直接對沒有序列化的父類對象進行對象的文件存儲與讀取操作、網絡傳輸時均會報錯的。
2017-01-07
已采納回答 / 頭發多
copyFileByBuffer這里是一個字節一個字節讀的--->(c=bis.read())!=-1,并非批量,應將它與copyFileByByte的速度相比,是快的。如果copyFileByBuffer使用字節數組讀取--->(b=in.read(buf, 0, buf.length))!=-1,那么會比同樣使用字節數組批量讀取的copyFile快。
2017-01-06
已采納回答 / 鄧孤思
byte b = -13;System.out.println(Integer.toHexString(b));// fffffff3 System.out.println(Integer.toHexString(b & 0xff));// f3
2017-01-05
已采納回答 / Manny2011
如果文件很小,你申請的容量8*1024個byte的數組就已經可以完全裝下,很顯然那么第一次讀就一下把文件讀完了;如果文件很大,你申請的容量一次讀取裝不完時,那就會有下一次讀取,直到讀到文件的末尾,此時返回-1,就跳出循環了;read(buf,0,buf.length)意思是一次最多讀取的字節數不超過8*1024,即<=8*1024.看一下這個方法的官方文檔解釋,你就會更加明白了.?????*Reads up to <code>len</code> bytes of data ...
2017-01-05
已采納回答 / Manny2011
還是數據編碼及存儲的原理還沒有搞清楚.^_^ 首先,我們用鍵盤寫文件時,是以輸入碼進行輸入的,比如拼音類的輸入法,或者是五筆字形輸入法,輸入之后,它會把你要輸入進去的字符保存成機內碼,也就是0 1所組成的機內碼,因為計算機只認識這種01 編碼的二進制碼. 當然對西方字符的話,相對字符少,最常用的ASCII編碼規則(8*16的矩陣),已經可以涵蓋所有的西文字符. 而對于中文字符,就復雜些,因為光漢字就有成千上萬個,所以又需要另外一套編碼規則,將所有這些中文字符涵蓋進去,說白了,就是給每一個漢字附一個唯一的二...
2017-01-04
已采納回答 / Old_dai
直接子目錄的抽象就是文件夾的路徑,視頻里說的子目錄就是文件夾的意思。dir.list()返回的是文件和文件夾的名稱,返回字符串數組;二dir.listFiles()返回的是文件和文件夾的路徑,返回File對象
2017-01-01