java socket 发送图片出现的问题
我这发送的图片是在发送一些字符串之后的。我开始写的
bb.writeShort(j);
bb.writeLong(l);//发送两个数据
FileInputStream fis1 = new FileInputStream(new File("F:\\1.jpg"));
byte[] buffer = new byte[1024];
int len= 0 ;
while (((len = fis1.read(buffer))>0))
bb.write(buffer, 0, len); //发送图片
bb.writeShort(j1);
bb.writeLong(l1);//发送另外两个数据
这个发送完之后可以正常收到该图片,但是之后所发送的j1与l1就运行不到了,会直接跳出异常
接受代码:
try{
DataInputStream dis = new DataInputStream(conn.getInputStream());
FileOutputStream fos = new FileOutputStream(("F:\\11.jpg"));
byte[] buffer = new byte[1024];
int len;
while (((len = dis.read(buffer))>0))
fos.write(buffer, 0, len);
dis.close();
fos.flush();
fos.close();
conn.close();
}catch(IOException e2){
}
跳出异常说的是什么conn已经关闭了,但是把这些.close()全都删了之后还会跳出异常。不知道怎么回事。
反正每回发送或接收图片时,一分步调试就会出故障,不知道运行到哪就动不了了。到底问题出在哪啊?
还有就是怎么发送多张图片,就是发送完一张图片,再发送几个j1,l1,然后再发送图片,我试着发了,可是最后3张图片保存成一张打不开的图片了。那一张的图片大小和发送的三张的总大小是相同的。
想问问怎么发送多张图片 socket java file buffer byte
补充:Java , Eclipse