我試圖下載youtube視頻(使用像keepvid一樣的鏈接)。我得到的文件比通過瀏覽器下載的文件大4kB,無法播放。有人可以告訴我爲什麼,我做錯了什麼? 此外,當我一行一行地打印兩個文件時,它們顯示相同的數據。下面用於下載的代碼。 謝謝。You Tube Downloader
try {
URL hr= new URL("link");
URLConnection conn= hr.openConnection();
conn.setRequestProperty("Uzer-Agent", "Mozilla/5.0");
conn.connect();
BufferedReader br=new BufferedReader(new InputStreamReader(conn.getInputStream()));
File file=new File("video.flv");
PrintWriter pw=new PrintWriter(new FileWriter(file));
String line="";
while((line=br.readLine())!=null){
System.out.println(line);
pw.println(line);
}
pw.close();
} catch (Exception e){}
首先,我會用'User-Agent'修復'Uzer-Agent'。然後,你不應該試圖用'PrintWriter'來寫文本的二進制文件。改用'OutputStream'。 –
「我得到的文件比通過瀏覽器下載的文件大4kB」「它們顯示的是相同的數據」---這兩個語句不一致。 –
線分隔符? – vikingsteve