java实现文件下载的两种方式,java中下载文件的方法
写爬虫互联网协议(互联网协议)被封了怎么解决?立即使用
下载网络文件的方法有:
字节流下载
街头流氓的FileUtils工具包下载
尼奥下载
学习视频分享:java教学视频
实现代码如下:
包com。DSP。RPC。公制elf
导入org。阿帕奇。公地。io。fileutils
导入Java。io。文件;
导入Java。网。httpurl连接;
导入Java。网。网址;
公共类DownloadZipUtil {
/**
*文件工具下载网络文件
*
* @param serverUrl:网络文件地址
* @param保存路径:本地保存路径
* @param zipSavePath:压缩文件保存路径
* @返回
*/
公共静态字符串downloadFile(字符串serverUrl,字符串savePath,字符串zipSavePath)引发异常{
字符串结果;
文件f=新文件(保存路径);
如果(!f.exists()) {
如果(!f.mkdirs()) {
引发新的异常(" makdirs:" " save path " " " fail ");
}
}
URL url=新URL(服务器URL);
http URL connection conn=(http URL connection)URL。打开连接();
conn . setconnecttimeout(3 * 1000);
//防止屏蔽程序抓取而放回403错误
conn.setRequestProperty(用户代理, Mozilla/4.0(兼容;MSIE 5.0 windows NTDigExt));
long totalSize=long。parse long(conn . getheaderfield( Content-Length ));
if (totalSize 0) {
fileutils。copyultofile(URL,新文件(zipSavePath));
结果=成功;
}否则{
抛出新异常(找不到服务器URL:{ } 服务器URL);
}
返回结果;
}
/**
* 字节流下载压缩文件
* @param serverUrl:网络地址
* @param保存路径:保持路径
* @param zipSavePath:压缩文件保持路径
* @return:下载结果
* @抛出异常:异常
*/
公共静态字符串downloadZip(字符串serverUrl,字符串savePath,字符串zipSavePath)引发异常{
字符串结果=失败
文件f=新文件(保存路径);
如果(!f.exists()){
如果(!f.mkdirs()) {
引发新的异常(" makdirs:" " save path " " " fail ");
}
}
//沙丁鱼是WebDAV的工具包
沙丁鱼沙丁鱼工厂。begin( test , test );
if(sardine.exists(serverUrl)){
URL url=新URL(服务器URL);
URL连接连接=URL。打开连接();
int length=conn . getcontentlength();
conn . setconnecttimeout(3 * 1000);
//防止屏蔽程序抓取而返回403错误
conn.setRequestProperty(用户代理, Mozilla/4.0(兼容;MSIE 5.0 windows NTDigExt));
InputStream是=沙丁鱼。getinputstream(服务器URL);
BufferedInputStream bis=new BufferedInputStream(is);
文件输出流fos=新文件输出流(zipSavePath);
BufferedOutputStream bos=新BufferedOutputStream(fos);
int len
字节[]字节=新字节[长度/5];
while ((len=bis.read(bytes))!=-1) {
bos.write(bytes,0,len);
}
//清除缓存
博斯。flush();
//关闭流
福斯。close();
是。close();
之二。close();
博斯。close();
结果=成功;
}否则{
引发新的异常("找不到文件");
}
返回结果;
}
}相关推荐:java入门教程以上就是爪哇岛下载网络文件的方法有哪些的详细内容,更多请关注我们其它相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。