Javaweb为什向浏览器多次响应数据,但是浏览器实际只得到了一张图片呢?

CielSwift 发布于 07/11 14:05
阅读 220
收藏 0
//		File girlss = new File("e:/girls");
//		File [] girls = girlss.listFiles();
//		for (File g:girls) {
//			byte [] da = new byte[1024*1024];
//			InputStream is = new FileInputStream(g.getAbsolutePath());
//			System.out.println(g.getAbsolutePath());
//			for (int len=0;(len=is.read(da))!=-1;) {
//			}
//			out.write(da); 多次发送数据
//		}

 

加载中
0
MZHS
MZHS

虽然没你这么无聊,搞这么个奇葩的程序。但是可以提供两个猜测,一种情况是out.write(da),只写入不发送(第二次写入覆盖第一次的结果),out.flush()或者out.close()才会发往客户端,这种情况下,你得到是list中的最后一张照片。第二种情况是客户端得到了所有照片的数据,但是由于数据格式原因,只会显示其中第一张或者最后一张图片,这个你看下前台得到的图片文件大小就清楚了.

MZHS
MZHS
回复 @CielSwift : 那你就把这张图片保存下来看看大小,如果和第一张的大小一样,那么就说明out.write是发送到客户端了,后面的数据客户端就不接收了。如果是所有图片大小的总和,那就说明数据也收了,只不过只显示第一张图片,这时你可以用命令将多个图片文件合并为一张,看看Windows如何显示
CielSwift
CielSwift
不是,是第一张图片.而且用谷歌检查,页面上也是只下载了一张
0
j
jybd

额,下载文件夹??

0
张亦俊
张亦俊

你这不是相当于把一堆图片拼一起响应了么……

一般只有图种才会用这种神操作

返回顶部
顶部