本文利用Java.net编写的网络客户端实现从服务器端下载文件的功能,本功能实现分三步:

1、创建本地待接收的远程文件。

2、创建本地至服务器端的远程连接。

3、将服务器端文件写入输入流,从输入流中将内容写入本地文件,完成文件下载。

代码如下:

public static int downloadFile(String remoteURL,String fileDirectory,String fileName) {Path p=Paths.get(fileDirectory);File f_p=p.toFile();try{if(!f_p.exists()) {f_p.mkdir();}File f=new File(p.toAbsolutePath().toString()+"\\"+fileName);if(!f.exists()) {f.createNewFile();}FileOutputStream fos=new FileOutputStream(f);byte[] pb=new byte[1024];URL url=new URL(remoteURL);URLConnection urlc=url.openConnection();InputStream inputstream=urlc.getInputStream();int length=-1;while(true) {length=inputstream.read(pb);if(length<0) {fos.flush();break;}else {fos.write(pb,0,length);}}inputstream.close();fos.close();return 0;}catch(Exception e) {e.printStackTrace();return -1;}

一、创建本地文件:

利用Path类获取目录路径对象,检测该路径是否存在,如不存在则利用File类中的mkdir方法

创建该路径

 Path p=Paths.get(fileDirectory);File f_p=p.toFile();if(!f_p.exists()) {f_p.mkdir();}File f=new File(p.toAbsolutePath().toString()+"\\"+fileName);System.out.println(f.getAbsolutePath());if(!f.exists()) {f.createNewFile();}FileOutputStream fos=new FileOutputStream(f);

二、建立远程URL连接准备下载服务器文件:利用URL类的openConnection方法获取一个URLConnection对象,该对象的getInputStream方法可以获得待下载文件的输入流对象。

 byte[] pb=new byte[1024];URL url=new URL(remoteURL);URLConnection urlc=url.openConnection();InputStream inputstream=urlc.getInputStream();

三、将第二步获取的输入流内容写入一个byte数组,并将该byte数组内容写入本地文件构建的输出流,完成文件下载。

 int length=-1;while(true) {length=inputstream.read(pb);if(length<0) {fos.flush();break;}else {fos.write(pb,0,length);}}inputstream.close();fos.close();

Java下载服务器文件相关推荐

  1. jQuery_Ajax下载服务器文件流的方法

    一般ajax,只能处理xml, json, script, or html类型,对返回的文件流却没办法下载了. 本人编写了一个AJAX插件,实现文件流下载. 然后JAva后台采用往response里写 ...

  2. java下载网络中的文件,java下载网络文件解决思路

    java下载网络文件 下面这段代码是下载一个http网络文件的代码,但有时候下载下来的图片是完整的,有时候下载下来的不完整,还有下载的ppt,pdf之类,也是打不开的.请大件们给指导一下,小弟感激不尽 ...

  3. 通过url路径下载服务器文件

    通过url路径下载服务器文件 html <iframe width=0 height=0 frameborder=0 name=hrong style="display: none&q ...

  4. WebClient上传文件至服务器和下载服务器文件至客户端

    #region WebClient上传文件至服务器 /// <summary> /// WebClient上传文件至服务器 /// </summary> /// <par ...

  5. 如何通过Java下载远程文件到浏览器

    如何通过Java下载远程文件到浏览器 整体思路: 首先获取远程资源的文件输入流,使用HttpServletResponse的输出流,通过Java io转换将输入流转成输出流,写入指定文件,下载到浏览器 ...

  6. java下载zip文件损坏_使用Java下载.zip文件会导致损坏的.zip文件?

    我写了这个方法来下载最新的Selenium Chrome驱动程序,它不起作用.它导致损坏的.zip文件.任何人都可以发现我的错误在哪里?使用Java下载.zip文件会导致损坏的.zip文件? priv ...

  7. 读取别的服务器的文件,java读取服务器文件

    java读取服务器文件 [2021-02-01 10:47:24]  简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace("/(\ ...

  8. 前台+后台 java下载服务器、本地图片、文件(下载tomcat配置的虚拟路径文件)可指定任意保存路径,SSM框架

    背景:一个系统中有web网站与APP两个客户端,两个客户端有分别的后台,共同部署在一个服务器上,APP有一个上传图片.文件的功能,网站端则可以查看.下载APP上传的图片,下载APP上传的文件. 问题: ...

  9. java对服务器文件操作、获取,删除,下载

    java原生环境,不许引用其他文件 这次废话不多说,直接上代码 各个代码块之间的代码可以单独使用 文章目录 远端获取文件 URL进行远端文件下载 本地文件打包 打zip包 文件下载到浏览器 http连 ...

  10. java下载的文件不完整_JAVA 解决FTP下载文件不完整问题

    在使用java的ftp下载服务器上的文件获取文件的byte[],然后对byte进行加密传输时, 注意是要获取byte[],而不是下载文件到本地: 发现下载的byte[]大小总是小于文件实际大小,并且下 ...

最新文章

  1. 构建高可用服务器之二 Keepalive参数详解
  2. c++ 动态规划(数塔)
  3. 删除ubuntu linux系统,从Windows双启动中卸载Ubuntu Linux
  4. 时间序列与R语言应用(part3)--趋势平稳与差分平稳
  5. 测试人员要了解的知识
  6. 安卓逆向_24( 一 ) --- Hook 框架 frida( Hook Java层 和 so层) )
  7. DBA跳槽应该去大公司还是小公司?99%的人这样说...
  8. 调整SAP系统中物料账和财务账的期间
  9. Codeforces Round #456 (Div. 2)
  10. @scheduled注解配置时间_Spring Cloud 之配置服务器(下)配置刷新
  11. 网卡变慢_解Bug之路记一次线上请求偶尔变慢的排查
  12. KVM 介绍(2):CPU 和内存虚拟化
  13. 【JDBC】数据库连接池
  14. 三星SOC的显示控制器及framebuffer驱动s3c-fb.c中probe函数分析
  15. 云课堂智慧职教答案python_云课堂智慧职教答案python,云课堂智慧职教数学答案,云课堂智慧职教搜题...
  16. 2021新版成语接龙小程序搭建详细教程
  17. 机器学习算法工程师面试考点汇总
  18. 手机支付宝,微信的请求userAgent
  19. 微信小程序加载闪屏,黑白屏,闪退问题
  20. Excel引用函数(1):FORMULATEXT,取得单元格公式内容

热门文章

  1. 2021五一数学建模ABC思路
  2. Java实现昵图网摄影图片爬虫
  3. class文件不能反编译
  4. excel linux时间戳转换成日期,Excel将Unix时间戳转换为日期
  5. 行业知识图谱调查报告(二):知识图谱构建及行业知识图谱构建举例
  6. MAC Unity安装教程
  7. java使用imagej_【原创】imagej使用达人指南,分享给大家!
  8. import jpype报错 解决办法
  9. verilog语法检查
  10. python生成图文并茂的pdf--财务报表(三)--页面布局和排版