为什么使用ImageIO下载的文件比浏览器下载的文件小?

| 下面的代码从指定的URL下载图像。 当从浏览器本地保存同一图像时,它比以编程方式下载的图像大得多,约为66%。 尽管代码未明确指定有关大小的任何参数,但是为什么下载的文件比从浏览器下载的文件小?
BufferedImage buffImage = ImageIO.read(new URL(\"random url to an image\"));
ImageIO.write(buffImage, \"jpg\", new File(\"MyAppDl.jpg\"));
编辑:很奇怪...不一致在不同的URL上,缩略图明显较小     
已邀请:
只是一个猜测:浏览器“按原样”加载文件...您的代码将文件读取到数据结构中,然后再次将其写入文件中。它很可能会应用默认压缩,该压缩可能会高于原始使用比率。 如果要原始文件,请不要使用
BufferedImage
ImageIO
,而应使用普通流对其进行读写。     
ImageIO
版本正在解压缩,并以其他质量设置重新压缩。不要这样做,请使用不处理数据的常规
Stream
类,而只是将其传递给未解释的数据。     

要回复问题请先登录注册