亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

文件傳輸基礎——Java IO流

難度入門
時長 2小時 0分
學習人數
綜合評分9.67
669人評價 查看評價
9.9 內容實用
9.6 簡潔易懂
9.5 邏輯清晰

已采納回答 / 早飯荷包蛋
第一個問題:<...圖片...>????我查看這個函數,read的返回值是the next byte of data,很明顯,是下個讀到的字節;第二個問題:????bos是輸出流,bos.write()就是將數據寫到輸出流,有什么問題嗎?????就像bis是輸入流,bos.read()將數據讀入輸入了流;????bis是一個桶,bos又是另一個桶,明白了嗎,不懂繼續追問

已采納回答 / 高原火狐貍
這點說的我也有些暈。我理解是:一共有A(源文件)、B(程序)、C(目標文件)三個桶,A裝滿了水,B、C都是空的,要把A的水通過B桶全部轉移到C桶。單字節:一瓢一瓢從A舀水到B桶,再從B桶一瓢瓢舀水到C桶;緩沖讀取:一瓢一瓢從A舀水到B桶,將B桶水直接倒入C桶;比單字節快一點;批量讀取:直接從A桶倒水進B桶,再從B桶倒水進C桶;最快。從最后性能對比看,應該是這樣的,老師解釋的時候沒有把B桶說太明確。

已采納回答 / dabo
這是正確的,數字以字節寫到你的文件,直接打開文件,編輯器會將數據根據字符集顯示為文字,而你的數字對應不上字符集中的文字,所以顯示亂碼。原理和用notepad 打開一個*.exe文件亂碼一樣

已采納回答 / 孤寂0123
betys=in.read(buf,0,buf.length),讀取信息內容的時候,將信息暫時存入buf數組,一次性讀不完的,會將讀取到的信息的buf數組循環釋放的,然后再繼續存入buf數組,繼續釋放------我是這樣想的,僅供參考

已采納回答 / chrt
java默認的編碼方式是unicode big endian,即大端存儲方式的unicode,具體數據的高位字節存放在低位地址上。關于大端模式和小端模式可以進一步百度。

已采納回答 / 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...

已采納回答 / 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...

已采納回答 / 絮絮念秋風
就是寫入的10,但是你如果用文本文檔打開,10對應ascii碼中的換行符,所以你看著就是換了一行的效果,不是你想看到的字符串“10”的效果

最贊回答 / 天涯蝶舞
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

已采納回答 / 自然自清
采用字節數組做參數,一次不僅可以寫入一個漢字,可以寫入一串漢字!

已采納回答 / 慕男嬸
一個類中只能有一個main,一個包中可以有多個類,所以可以有多個main

已采納回答 / _瀟瀟暮雨
第一個問題:具體傳遞什么參數由方法的簽名決定。第二個問題:先刪除后創建,原先的內容肯定會被后面的覆蓋。

已采納回答 / 不再是石頭
個人認為你理解出現誤區了,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

已采納回答 / RockenRoll
當一個類實現了Serializable接口,表示該類可以序列化.序列化的目的是將一個實現了Serializable接口的對象轉換成一個字節序列
課程須知
親,為了更好的學習本門課程,需要您對二進制的知識有所了解,還要熟悉Java的基本語法和面向對象的知識。
老師告訴你能學到什么?
1、了解文件編碼。 2、能夠對文件和目錄進行管理操作。 3、能夠應用字節流和字符流對文件進行讀寫操作。 4、能夠對對象進行序列化和反序列化。

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!

本次提問將花費2個積分

你的積分不足,無法發表

為什么扣積分?

本次提問將花費2個積分

繼續發表請點擊 "確定"

為什么扣積分?

舉報

0/150
提交
取消