java网络编程之Http多线程下载应用实例
本demo通过RandomAccessFile, URLConnection和多线程机制实现了Http下载功能.从这里可以下载到完整的java代码工程:?http://download.csdn.net/detail/hejiangtao/4029935.? 相对于别的网上的例子来看, 本demo是可运行的, 可以判断网络资源是否支持分段下载. 你是否遇到了java下载的图片显示不出来或者RAR解压不了的情况, 可以参考本demo的解决方案
设计思路:
1. 首先读取文件的长度, 并判断网站是否支持分段下载
2. 如果支持分段下载则创建多个线程同时下载该文件,否则使用单线程下载
3. 在各个线程中,分别使用RandomAccessFile对象写入对应的文件位置
具体实现解析:
????? 1. 为了方便理解,先把util类贴出来.
SysValue.java:
在实际应用中,这些参数应该可以在界面配置或者配置文件配置.
b.可以多线程下载的图片测试
URL: http://hi.csdn.net/attachment/201201/1/0_1325433530Bg5e.gif
线程数: 3
控制台打印信息:
c. 不能多线程下载图片
URL: http://3.bp.blogspot.com/-oVO24VW8F6M/TxJ9O0opP3I/AAAAAAAAANY/anpu8S4FAC4/s640/100_9223.JPG
线程数: 3
控制台打印信息:
到这里整个demo完成了.
注:?转载请注明出处: http://hejiangtao.iteye.com ,?用于商业得给我分成