1. 程式人生 > >JAVA中建立HTTP通訊,從伺服器上獲取HTML程式碼,通過HTTP請求來下載圖片或其他二進位制檔案的程式,下載結果要按下載到的檔案型別進行存檔中。

JAVA中建立HTTP通訊,從伺服器上獲取HTML程式碼,通過HTTP請求來下載圖片或其他二進位制檔案的程式,下載結果要按下載到的檔案型別進行存檔中。

通過HTTP請求來下載圖片或其他二進位制檔案的程式,下載結果要按下載到的檔案型別進行存檔

將程式碼從伺服器的中獲取下來的程式碼,在我之前已經講過了這裡寫連結內容

這裡我們就直接將原始碼稍加改動,加入一個檔案並請將builder 寫入即可。

import java.net.*;
import java.io.*;
public class Httpconnect{
    public static void main(String agrs[]){
        try{
            URL url=new URL("http://www.4399.com/");//建立一個URL類的例項,並指定網址
URLConnection connection=url.openConnection();//建立例項連線指定URL上的內容 InputStream is=connection.getInputStream();//獲取內容的位元組流 InputStreamReader isr=new InputStreamReader(is,"utf-8");//將位元組流包裝為字串流,並制定編碼格式為utf-8 BufferedReader in=new BufferedReader(isr);//建立一個例項用來存放轉換後的字元
String line;//定義一個字串型別變數 StringBuilder builder=new StringBuilder();//建立例項 String filePath = "F:\\CloudMusic\\quyuquan2014.txt";//定義檔案的地址 while((line = in.readLine()) != null){ builder.append(line+"\n");//append方法使builder包含line中的所有資訊 } in.close();//關閉流
isr.close();//關閉流 is.close();//關閉流 FileWriter writer = null;//初始化 writer = new FileWriter(new File(filePath), true); writer.write(builder.toString());//這裡必須用到tostring } catch(IOException e){ e.printStackTrace(); } } }

這裡寫圖片描述

結論

首先,我們在這裡就現在F盤網易雲音樂中建立一個.txt檔案。 然後我們只需要定義一下檔案的地址,並且將裝載了伺服器的HTML原始檔builder寫入到檔案即可。

這裡唯一讓注意的是再寫入檔案內容的時候,因為我們之前用的是 StringBuilder 所以 就不能用writer.writer(builder). 我之前用的話立馬報錯 說String Builder不支援這樣的型別 故需要加上toString 才可以執行。這點需要參考到StringBuilder的具體用法。這裡寫連結內容