[英]Java DataInputStream to image file
我正在做作業,必須連接到http服務器並使用套接字編程下載html文件和圖像文件。
我做得很好,能夠正確下載和寫入html和圖像文件。 但是,當我編輯代碼以滿足作業要求時(網頁必須在本地工作,因此對代碼進行了編輯以重寫html,因此圖像文件未正確寫入。
我不記得編輯用於下載圖像的方法的代碼。 我以為自己做完了就檢查了文件,並且圖像顯示無效的圖像。
字節(當我在notepad ++中並排打開正確的圖像和下載圖像時),字節相同。 問題在於,在下載的映像中,字節被寫成一長行,而在正確的映像中,字節被一行一行地寫入。
嘗試了幾種不同的方法,但都沒有起作用。 實際上,我發送給朋友的舊代碼(在進行上述編輯之前)似乎也不起作用。 有任何想法嗎?
DataInputStream imgIn=new DataInputStream(socket.getInputStream());
DataOutputStream imgOut = new DataOutputStream(new FileOutputStream(host+path));
byte[] byteArr=new byte[1024];
int bytesRead=0,totalBytesRead=0;
while (totalBytesRead<imageSize ){
bytesRead=imgIn.read(byteArr,0,1024);
totalBytesRead+=bytesRead;
imgOut.write(byteArr,0,bytesRead);
imgOut.flush();
}
/* while ((bytesRead = imgIn.read(byteArr)) > 0)
{
imgOut.write(byteArr, 0, bytesRead);
imgOut.flush();
}*/
imgIn.close();
imgOut.close();
}
謝謝你的幫助!
我認為這是否是必要條件:在本地創建網頁。
您不僅應該下載文件(htmls,jpegs等),還應該復制目錄結構,並且不需要編寫單獨的代碼即可在本地工作。
希望能幫助到你 :-)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.