當前位置:首頁 » 編程語言 » javahttp下載

javahttp下載

發布時間: 2023-06-16 19:30:36

1. 請java大牛幫忙,關於HTTP文件下載,功能可以實現,但是下載後總是有個別文件不能被刪除.


importjava.io.*;
importjava.net.*;
importjava.util.Scanner;


publicclassTest{
privatestaticStringfileName="http://localhost/file/1.jpg";
publicstaticvoidmain(Stringargs[])throwsException{
URLurl=newURL(fileName);
URLConnectionuc=url.openConnection();
uc.connect();
HttpURLConnectionhuc=(HttpURLConnection)uc;
if(huc.getResponseCode()!=HttpURLConnection.HTTP_OK){
//判斷是否成功連接到http,如果不能連接則返回
System.out.println("can'tconnect");
return;
}

Filef=newFile("D://text.jpg");//把文件復制到D盤的text.jpg中
InputStreamin=(uc.getInputStream());//打開輸入流
byte[]data=newbyte[1024*10];
intl=in.read(data);
if(!f.exists())f.createNewFile();
FileOutputStreamout=newFileOutputStream(f);
while(l!=-1){
out.write(data,0,l);
l=in.read(data);
}
out.flush();
out.close();
System.out.println("OK");
}
}

自己把源地址修改下

2. http://java.sun.com/ 怎麼下載Java 1.5 JDK (要求詳細步驟)

http://java.sun.com/ -->JDK 6 Release Candidata Download -->稿孝咐鍵純Download-->Accept License Agreement-->慎段選擇版本-->download

3. java,http下載文件

http是流傳輸,一次請求中你是不能將流截斷的,如果想做到你說的只有兩種形式:
1、就是你使用的方式,多段讀取(其實就是斷點續傳的原理),多個請求,每個請求請求一部分,如果你覺得效率低可以從兩方面優化:
(1)不要用URLConnecion,而使用HttpClient之類的工具包進行請求
(2)使用多線程並發請求,其實就是斷點續傳了,迅雷就是幾個線程一起下嘛
2、只請求一次,請求全部的,將全部流緩存到內存中(byte[]),然後根據你的需要分段截取,寫入文件

4. 怎麼下載java

下載Java,也就是下載Java語言的軟體開發工具包,也就是JDK。

下載並安裝JDK的步驟:

  1. 下載jdk,直接網路搜索jdk。

5. 用Java HTTP下載文件獲取失敗,不明原因

你先得從頭裡面讀取文件大小啊,然後你再設置需要下載文件的Range啊,再者byte[]這要設置成1啊,這是一個位元組,不是1k,設置大一些,別太小了,要不你用buffer就沒有意義了

6. java如何將本地文件返回給對方一個下載鏈接(http方式下載)

根據http協議來做,
響應的時候 Content-Type 類型進行設置,當然你需要對外提供這個介面,將需要下載的本地文件以流的形式傳輸

7. java里http伺服器如何將文件製成一個下載路徑

/**
*文件下載
*/
@RequestMapping("/downloadfile")
(StringresStr,HttpServletResponseresponse){
PrintWriterpw=null;
StringBuffersb=newStringBuffer();

try{
StringfileName="文件名";
response.setCharacterEncoding("UTF-8");
response.setContentType("application/x-msdownload");
response.addHeader("Cache-Control","no-cache,no-store,must-revalidate");
response.addHeader("charset","utf-8");
response.addHeader("Pragma","no-cache");
response.setHeader("Content-Disposition","attachment;filename=""+fileName+"";filename*=utf-8''"+fileName);
sb.append(resStr);
pw=response.getWriter();
pw.write(sb.toString());
pw.close();
response.flushBuffer();
}catch(IOExceptione){
logger.info("下載文件出錯");
e.printStackTrace();
if(pw!=null){
pw.close();
}
}finally{
if(pw!=null){
pw.close();
}
}
}

resStr 欄位傳寫入文件里的內容

8. 用JAVA下載HTTP文件時遇到問題

importjava.net.*;
importjava.io.*;
publicclassURLConnectionDemo{
publicstaticvoidmain(String[]args)throwsException{
URLurl=newURL("http://www.scp.e.cn/pantoschoolzz/BG/Bord/Message/DownloadMessageAttachment.aspx?ID=215");
URLConnectionuc=url.openConnection();
StringfileName=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");
Stringpath="D:"+File.separator+fileName;
FileOutputStreamos=newFileOutputStream(path);
InputStreamis=uc.getInputStream();
byte[]b=newbyte[1024];
intlen=0;
while((len=is.read(b))!=-1){
os.write(b,0,len);
}
os.close();
is.close();
System.out.println("下載成功,文件保存在:"+path);
}
}

//給你一個下載的例子吧,僅供參考。

9. java 獲得http下載文件的真實名稱

有兩種獲取鏈接文件名的方法:

第一種:從連接URL,從描述中獲取

比如這種地址:

http://book.booktxt.com/txtbuk/20130421/xuanhuan/2013043601180.rar

熱點內容
android訪問網路許可權 發布:2025-02-12 14:55:20 瀏覽:88
原神文件夾 發布:2025-02-12 14:50:15 瀏覽:800
c語言數字翻譯 發布:2025-02-12 14:45:54 瀏覽:497
暗區突圍為什麼顯示伺服器維修 發布:2025-02-12 14:45:53 瀏覽:247
翻譯分為匯編和編譯 發布:2025-02-12 14:29:12 瀏覽:233
什麼是新聞編譯 發布:2025-02-12 14:23:12 瀏覽:853
如何查看手機存儲 發布:2025-02-12 14:21:15 瀏覽:50
cacti自定義腳本 發布:2025-02-12 14:21:13 瀏覽:313
編譯安卓步驟 發布:2025-02-12 14:19:39 瀏覽:222
php把數組分組 發布:2025-02-12 14:19:37 瀏覽:280