我使用java.net编写一个文件传输服务器,需要接受客户端发送过来的文件,文件接受完毕过后,在给客户端发送一个ok的确认信息,结果出现了一个如下的问题:
客户传输一个文件过后,在随后使用
byte returnvalue[]=new byte[10];
int len=in.read(returnvalue);
接受服务器确认的信息时,却在服务器端老实出现接收阻塞,既num = in.read(buf);一直阻塞,无法得到-1结束的信息,并且一个在等待》
请问该如何处理
客户传输一个文件过后,在随后使用
byte returnvalue[]=new byte[10];
int len=in.read(returnvalue);
接受服务器确认的信息时,却在服务器端老实出现接收阻塞,既num = in.read(buf);一直阻塞,无法得到-1结束的信息,并且一个在等待》
请问该如何处理
你檢測一下這個
我遇到個這樣的問題
long filelength=objectis.readLong();
//接受文件内容流
File file=new File(userfolder,contenttype+"/preview/"+previewfilename);
FileOutputStream fos=new FileOutputStream(file);
byte[] buffer = new byte[1024];
long nowrecieve=0;
int size=0;
if(filelength>0)
while (nowrecieve<filelength)
{
size=is.read(buffer);
nowrecieve+=size;
fos.write(buffer, 0, size);
}
System.out.println("正常退出");
http://community.csdn.net/Expert/topic/4654/4654417.xml?temp=.981106
着急呀,大家帮忙解决,谢谢
我是这样做的
while( in.read(buf)>0){
//do something
}
//这里开始处理发送OK,但先关闭IN,
in.flush();
in.close();