日期:2014-05-20  浏览次数:20564 次

网络文件传输显示进度条的问题 ...
我在用Swing做一个C/S的聊天系统,想实现在传输文件过程中显示进度条的功能。
在网上找了许多实例,但基本上是计数器、sleep()什么的,看了感觉没什么帮助。
我已经完成了文件传输的功能,就是进度条部分不知道怎么实现,稍微总结一下,
进度条是使用JProgressBar,或者ProgressMonitor其中之一。ProgressMonitor的
疑问是它一般是对文件进行读取,不难获取本地文件的大小,可以显示完成进度,
但是在网络传输中接收端就不能获取当前进度了。JPropressBar的问题在于它作
为一个组件必须添加到一个容器中,不能独立存在。我尝试了一些方法,在传文
件的线程中弄个JFrame,或者JDialog,把JPropressBar加进去,结果不是异常就
是阻塞。希望这里有相关经验的人给些指点,或者附点代码上来看看,谢谢!


------解决方案--------------------
我有一个项目在Dev.java.net上有这个的。是一个类,做得不错。可以去看看。项目叫“sharelan”。
------解决方案--------------------
哦 TCP 不能跨内网
以前写过 应该没什么问题的 睡觉了
祝你好运
------解决方案--------------------
文件上传了多少,就按比例更新下进度条咯


------解决方案--------------------
用ProgressMonitorInputStream过滤器流,它可以自动弹出一个对话框,监视已经读取了多少流