久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

Java:使用URL下載圖片為何圖片下載不完全呢?

瀏覽:141日期:2024-01-20 16:53:07

問題描述

public class Client { public static void main(String[] args) {try { URL url = new URL('http://www.iteye.com/upload/logo/user/1177132/a7159cc1-b11a-3122-9a9d-5183d6c6ba99.jpg'); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setConnectTimeout(5 * 1000); InputStream inputStream = connection.getInputStream(); byte[] tmp = new byte[1024]; int length; OutputStream outputStream = new FileOutputStream('E:' + File.separator + 'eee.jpg'); while ((length = inputStream.read(tmp)) != -1) {outputStream.write(tmp, 0, length); } outputStream.close(); inputStream.close();} catch (Exception e) { e.printStackTrace();} }}

圖片URL:http://www.iteye.com/upload/l...圖片有3K,但我下載后圖片只有2K而且圖片是錯誤的這是為什么呢?

問題解答

回答1:

你把代碼改成這樣試試

public class Client { public static void main(String[] args) {try { URL url = new URL('http://www.iteye.com/upload/logo/user/1177132/a7159cc1-b11a-3122-9a9d-5183d6c6ba99.jpg'); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestProperty('User-Agent', 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.19 Safari/537.36'); connection.setConnectTimeout(5 * 1000); InputStream inputStream = connection.getInputStream(); byte[] tmp = new byte[1024]; int length; OutputStream outputStream = new FileOutputStream('E:' + File.separator + 'eee.jpg'); while ((length = inputStream.read(tmp)) != -1) {outputStream.write(tmp, 0, length); } outputStream.close(); inputStream.close();} catch (Exception e) { e.printStackTrace();} }}

不添加UA下載下來的文件其實是這樣的Java:使用URL下載圖片為何圖片下載不完全呢?

回答2:

outputStream.close()之前,先調用outputStream.flush(),這個方法能強制把輸出流緩沖全部寫出來。你前邊的都沒錯,就差一步了。

回答3:

這是我用你的代碼讀到的東西。

Java:使用URL下載圖片為何圖片下載不完全呢?

目標禁止了,為connection添加一個user-agent屬性吧。

標簽: java
相關文章:
主站蜘蛛池模板: 禹州市| 太康县| 宿州市| 信丰县| 九龙城区| 巫溪县| 聂拉木县| 教育| 泽库县| 阜平县| 吉首市| 温州市| 舞阳县| 襄垣县| 东乡族自治县| 房山区| 梁山县| 武川县| 美姑县| 象州县| 永吉县| 南丹县| 固安县| 昌宁县| 沁源县| 威海市| 桃江县| 甘德县| 莱芜市| 威信县| 上栗县| 昌平区| 卫辉市| 湖州市| 邵阳市| 周至县| 会泽县| 邢台县| 东宁县| 古丈县| 天峻县|