「java服务器下载文件」java下载文件到服务器
今天给各位分享java服务器下载文件的知识,其中也会对java下载文件到服务器进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、java 如何在使用java类 从客户端下载服务器上的文件
- 2、java从服务器下载文件时,为什么必须先创建一个和服务器文件大小相同的临时文件?
- 3、用java实现文件的上传与下载
- 4、怎样通过java实现服务器上文件下载?
- 5、java 下载服务器端文件,路径怎么写
- 6、java下载服务器上的文件到客户端
java 如何在使用java类 从客户端下载服务器上的文件
js 做不到 copy 到客户端指定位置
如果说的是java的话, 可以做到
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
/*
* 文 件 名: Test.java
* 版 权: XX Technologies Co., Ltd. Copyright YYYY-YYYY, All rights reserved
* 描 述: 描述
* 修改时间: 2015-7-10
* 跟踪单号: 跟踪单号
* 修改单号: 修改单号
* 修改内容: 修改内容
*/
/**
*
* @version [版本号, 2015-7-10]
* @see [相关类/方法]
* @since [产品/模块版本]
*/
public class Test
{
public static void main(String[] args)
{
try
{
URLConnection openConnection = new URL("服务器文件的访问地址").openConnection();
InputStream is = openConnection.getInputStream();
byte[] buff = new byte[1024];
int len;
FileOutputStream fos = new FileOutputStream("c:\\你的文件名.扩展名");
if (null != is)
{
while ((len = is.read(buff)) != -1)
{
fos.write(buff, 0, len);
}
}
fos.close();
is.close();
}
catch (MalformedURLException e)
{
e.printStackTrace();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
java从服务器下载文件时,为什么必须先创建一个和服务器文件大小相同的临时文件?
这是习惯,因为你不这样,文件大小就是在下载过程中动态变化,这不是好事。。。改变文件大小本身就有一系列对文件系统的操作,因为第一次被分配的文件位置并不一定有这么大的连续空间,增大文件大小,那么只能从别的空间找然后连接到这个文件上,逻辑上是连续的,物理上是不连续的,那么文件就在存储器上就变成分散的了,也就是分成好多碎片,在不同的位置,这对于读写来说严重影响速度。。。因为无论是硬盘还是flash都不是随机存储器,以分散就要频繁的定位。。。
最好是让文件在连续的区域内,那么你一开始就设定大小,那么系统会尽量分配到连续的存储区,
用java实现文件的上传与下载
1.下载简单,无非是把服务器上的文件或者数据库中的BLob(或其他二进制型),用流读出来,然后写到客户端即可,要注意 ContentType。
2.上传,可以用Apache Commons Upload等开源工具,或者自己写:
form要用enctype="multipart/form-data"
然后服务器端也是用IO把客户端提交的文件流读入,然后写到服务器的文件系统或者数据库里。不同的数据库对Lob字段操作可能有所不同,建议用Hibernate,JPA等成熟的ORM框架,可以不考虑数据库细节。
怎样通过java实现服务器上文件下载?
在jsp/servlet中断点/多线程下载文件
%@ page import="java.io.File" %
%@ page import="java.io.IOException" %
%@ page import="java.io.OutputStream" %
%@ page import="java.io.RandomAccessFile" %
%!
public void downloadFile(HttpServletRequest request, HttpServletResponse response, File file) throws IOException {
RandomAccessFile raf = new RandomAccessFile(file, "r");
java.io.FileInputStream fis = new java.io.FileInputStream(raf.getFD());
response.setHeader("Server", "");
response.setHeader("Accept-Ranges", "bytes");
long pos = 0;
long len;
len = raf.length();
if (request.getHeader("Range") != null) {
response.setStatus(HttpServletResponse.SC_PARTIAL_CONTENT);
pos = Long.parseLong(request.getHeader("Range")
.replaceAll("bytes=", "")
.replaceAll("-", "")
);
}
response.setHeader("Content-Length", Long.toString(len - pos));
if (pos != 0) {
response.setHeader("Content-Range", new StringBuffer()
.append("bytes ")
.append(pos)
.append("-")
.append(Long.toString(len - 1))
.append("/")
.append(len)
.toString()
);
}
response.setContentType("application/octet-stream");
response.setHeader("Content-Disposition", new StringBuffer()
.append("attachment;filename=\"")
.append(file.getName())
.append("\"").toString());
raf.seek(pos);
byte[] b = new byte[2048];
int i;
OutputStream outs = response.getOutputStream();
while ((i = raf.read(b)) != -1) {
outs.write(b, 0, i);
}
raf.close();
fis.close();
}
%
%
String filePath = request.getParameter("file");
filePath = application.getRealPath(filePath);
File file = new File(filePath);
downloadFile(request, response, file);
%
java 下载服务器端文件,路径怎么写
路径就是如:“/user/etc”。
解释:服务器的路径展现形式不是以盘符开始的,而是以“/”开始,之后的路径和windows系统无任何区别,如上面举例的路径,如果想从etc下拿文件,直接“cd /user/etc”之后找到想要的文件,进行下载即可。
java下载服务器上的文件到客户端
java编程方法下载服务器上的文件到本地客服端,代码如下:
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;
public class DownLoad {
public static void downloadFile(URL theURL, String filePath) throws IOException {
File dirFile = new File(filePath);
if(!dirFile.exists()){
//文件路径不存在时,自动创建目录
dirFile.mkdir();
}
//从服务器上获取图片并保存
URLConnection connection = theURL.openConnection();
InputStream in = connection.getInputStream();
FileOutputStream os = new FileOutputStream(filePath+"\\123.png");
byte[] buffer = new byte[4 * 1024];
int read;
while ((read = in.read(buffer)) 0) {
os.write(buffer, 0, read);
}
os.close();
in.close();
}
public static void main(String[] args) {
//下面添加服务器的IP地址和端口,以及要下载的文件路径
String urlPath = "http://服务器IP地址:端口/image/123.png";
//下面代码是下载到本地的位置
String filePath = "d:\\excel";
URL url = new URL(urlPath);
try {
downloadFile(url,filePath);
} catch (IOException e) {
e.printStackTrace();
}
}
}
java服务器下载文件的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java下载文件到服务器、java服务器下载文件的信息别忘了在本站进行查找喔。