关于java下载http文件的信息
今天给各位分享java下载http文件的知识,其中也会对进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、请Java大牛帮忙,关于HTTP文件下载,功能可以实现,但是下载后总是有个别文件不能被删除.
- 2、java怎样读取http文件服务器上的文件列表并下载?
- 3、用Java HTTP下载文件获取失败,不明原因
- 4、java如何将本地文件返回给对方一个下载链接(http方式下载)
- 5、java,http下载文件
- 6、用JAVA下载HTTP文件时遇到问题
请Java大牛帮忙,关于HTTP文件下载,功能可以实现,但是下载后总是有个别文件不能被删除.
import java.io.*;
import java.net.*;
import java.util.Scanner;
public class Test {
private static String fileName="";
public static void main(String args[]) throws Exception {
URL url=new URL(fileName);
URLConnection uc=url.openConnection();
uc.connect();
HttpURLConnection huc=(HttpURLConnection)uc;
if(huc.getResponseCode()!=HttpURLConnection.HTTP_OK){
//判断是否成功连接到http,如果不能连接则返回
System.out.println("can't connect");
return;
}
File f=new File("D://text.jpg");//把文件复制到D盘的text.jpg中
InputStream in=(uc.getInputStream());//打开输入流
byte[] data=new byte[1024*10];
int l=in.read(data);
if(!f.exists()) f.createNewFile();
FileOutputStream out=new FileOutputStream(f);
while(l!=-1){
out.write(data, 0, l);
l=in.read(data);
}
out.flush();
out.close();
System.out.println("OK");
}
}
自己把源地址修改下
java怎样读取http文件服务器上的文件列表并下载?
把要下载的文件名存在数据库中,载入页面通过servlet或者action或者采用javaBean读取数据库数据,然后遍历出来,再通过servlet或者action的outputstream下载即可
用Java HTTP下载文件获取失败,不明原因
你先得从头里面读取文件大小啊,然后你再设置需要下载文件的Range啊,再者byte[]这要设置成1啊,这是一个字节,不是1k,设置大一些,别太小了,要不你用buffer就没有意义了
java如何将本地文件返回给对方一个下载链接(http方式下载)
根据http协议来做,
响应的时候 Content-Type 类型进行设置,当然你需要对外提供这个接口,将需要下载的本地文件以流的形式传输
java,http下载文件
http是流传输,一次请求中你是不能将流截断的,如果想做到你说的只有两种形式:
1、就是你使用的方式,多段读取(其实就是断点续传的原理),多个请求,每个请求请求一部分,如果你觉得效率低可以从两方面优化:
(1)不要用URLConnecion,而使用HttpClient之类的工具包进行请求
(2)使用多线程并发请求,其实就是断点续传了,迅雷就是几个线程一起下嘛
2、只请求一次,请求全部的,将全部流缓存到内存中(byte[]),然后根据你的需要分段截取,写入文件
用JAVA下载HTTP文件时遇到问题
import java.net.*;
import java.io.*;
public class URLConnectionDemo{
public static void main(String[] args)throws Exception{
URL url = new URL("");
URLConnection uc = url.openConnection();
String fileName = uc.getHeaderField(6);
fileName = URLDecoder.decode(fileName.substring(fileName.indexOf("filename=")+9),"UTF-8");
System.out.println("文件名为:"+fileName);
System.out.println("文件大小:"+(uc.getContentLength()/1024)+"KB");
String path = "D:"+File.separator+fileName;
FileOutputStream os = new FileOutputStream(path);
InputStream is = uc.getInputStream();
byte[] b = new byte[1024];
int len = 0;
while((len=is.read(b))!=-1){
os.write(b,0,len);
}
os.close();
is.close();
System.out.println("下载成功,文件保存在:"+path);
}
}
//给你一个下载的例子吧,仅供参考。
java下载http文件的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、java下载http文件的信息别忘了在本站进行查找喔。
发布于:2022-11-22,除非注明,否则均为
原创文章,转载请注明出处。