Re: [問題] 用socket做檔案傳輸的檔案大小問題...

看板java作者 (Challenge!)時間16年前 (2008/06/21 14:56), 編輯推噓2(204)
留言6則, 3人參與, 最新討論串4/4 (看更多)
成功地分批寫入檔案了 ︿( ̄︶ ̄)︿ 可是寫出來的檔案會比原本的大一點 囧 要怎麼解決阿...? FileInputStream fi=new FileInputStream("c:\\Tranfile\\02.jpg"); FileOutputStream fo=new FileOutputStream("c:\\Tranfile\\2nd03.jpg"); System.out.println("file size="+fi.available());//印出檔案大小 int fileSize=fi.available(); byte data[]=new byte[512]; while(fileSize>0) { int i=0; fi.read(data,i,512); fo.write(data,i,512); i+=512; fileSize-=512; } System.out.println("檔案已複製且重新命名"); fi.close(); fo.close(); -- ◤  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ╱╲ ★ | ◣       ◣ ◣  ◢ ◣  ◢ ╱  ╲  | ◣  ◣    ◣◢◤ ■  ■╱    ╲ | ■◥■  ■   ■   ■  ■ ̄|˙ ˙| ̄ | ■    ■ . ■ ˙ ■  ◣◢﹌>︽︽<﹌ http://album.blog.yam.com/miyuika -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.193.65.164 ※ 編輯: miyuika 來自: 123.193.65.164 (06/21 14:57) ※ 編輯: miyuika 來自: 123.193.65.164 (06/21 14:58)

06/21 14:59, , 1F
雖然我不是很清楚,但你這樣寫,最後不滿512 bytes可以嗎?
06/21 14:59, 1F

06/21 14:59, , 2F
對阿 所以檔案變大了...怎麼辦 XD
06/21 14:59, 2F

06/21 14:59, , 3F
想想看在什麼時候傳輸的量不是 512
06/21 14:59, 3F

06/21 15:01, , 4F
第二篇推文中有提示了
06/21 15:01, 4F

06/21 15:02, , 5F
喔喔~~! 我知道了 已改好XD
06/21 15:02, 5F

06/21 16:12, , 6F
成功寫出可以傳輸無限大檔案的socket嚕 謝謝大家的幫忙*^^
06/21 16:12, 6F
文章代碼(AID): #18NAOkwH (java)
文章代碼(AID): #18NAOkwH (java)