java中怎么用socket 一次传多个文件啊?
传单个文件的时候是client发送文件名,server接收文件名,然后开始传,client开始接收。传多个文件的时候,我开始的时候,把文件列表放在string[]中,然后...
传单个文件的时候是client发送文件名,server接收文件名,然后开始传,client开始接收。
传多个文件的时候,我开始的时候,把文件列表放在string[]中,然后用for(;i<name.length;i++)的方法,里面用传单一文件的方法,但是总是出现socket lose的错误。
求助~~~~~~~~~~ 展开
传多个文件的时候,我开始的时候,把文件列表放在string[]中,然后用for(;i<name.length;i++)的方法,里面用传单一文件的方法,但是总是出现socket lose的错误。
求助~~~~~~~~~~ 展开
展开全部
java中用socket一次传多个文件,参考思路如下:
1、把线程放到Vector 线程池里面;笑脊
2 、每次从Vector里面拿到第一个空闲的,如果没有,就新建一个线程,并保存到线洞前程池, 线程状态为使用中;
3 、线程完毕后,通知管理类,管理类把线程标识为空闲;
可以封装为简单的方法,如下:
public MyThread getFreeThread(){
.. // 从池里面获取一个空闲线程
}
public void finished(MyThread o){
//碰颤渗 线程通知管理类,我已经完成了
}
1、把线程放到Vector 线程池里面;笑脊
2 、每次从Vector里面拿到第一个空闲的,如果没有,就新建一个线程,并保存到线洞前程池, 线程状态为使用中;
3 、线程完毕后,通知管理类,管理类把线程标识为空闲;
可以封装为简单的方法,如下:
public MyThread getFreeThread(){
.. // 从池里面获取一个空闲线程
}
public void finished(MyThread o){
//碰颤渗 线程通知管理类,我已经完成了
}
展开全部
客户端接收多个文件的时候他所获取到的任然是一个字节流序列,所以你要确保第一个文件的序列有多长,第二个有多长....
然后在客户端截取这些序列进行保存操作,处理键汪尘方法有很多种,我以前稿禅用过的一种方法是接收数据时前1024个字节放文件名,然后的8个字节放文件大小,接着就是文件的信息。客户端只需要按这种方式解析就行了。。。
希望对你有用陵埋。。。。
然后在客户端截取这些序列进行保存操作,处理键汪尘方法有很多种,我以前稿禅用过的一种方法是接收数据时前1024个字节放文件名,然后的8个字节放文件大小,接着就是文件的信息。客户端只需要按这种方式解析就行了。。。
希望对你有用陵埋。。。。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你好,能把你的多文件传输的例子发给我看一下吗,谢谢啦!!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询