2012-10-29 7 views
0

누구든지 자바 URL 리더를 도와 줄 수 있습니까?Java double URL Reader?

링크를 읽고 특정 파일로 보내는 URL 판독기를 Java로 작성했습니다. 두 URL에서 코드를 읽고 특정 파일에 저장하려면 어떻게해야합니까? 당신은 하나의 파일에 쓸 계획이라면

import java.net.*; 
import java.io.*; 

public class URLReader { 

public static void main(String[] args) throws Exception { 

    URL oracle = new URL("http://www.oracle.com/"); 
    URLConnection yc = oracle.openConnection(); 
    BufferedReader in = new BufferedReader(new InputStreamReader(
    yc.getInputStream())); 

    String inputLine; 
    BufferedWriter psout = new BufferedWriter(new FileWriter("D:\\final.txt")); 
    while ((inputLine = in.readLine()) != null) { 
    psout.write(inputLine); 
    System.out.println(inputLine); 
    } 
    in.close(); 
    psout.close(); 
    } 
} 
+0

두 URL의 콘텐츠를 하나의 파일로 차례로 저장 하시겠습니까? 또는 각 URL을 별도의 파일에 저장합니까? – DNA

+0

나는 (a) 당신이 원하는 것에 대해 더 명확하게 제시해야하고 (b) 지금까지 시도한 것을 보여야한다고 생각합니다. – lonesomeday

답변

0

, 당신이하는 방법으로이를 추출하고 FileWriter에서 append 인수를 사용할 수 있습니다 :

private static void saveURL(String urlString) throws MalformedURLException, IOException { 
    URL url = new URL(urlString); 
    URLConnection yc = url.openConnection(); 
    BufferedReader in = new BufferedReader(new InputStreamReader(yc.getInputStream())); 

    String inputLine; 
    BufferedWriter psout = new BufferedWriter(new FileWriter("final.txt", true)); 

    // write file... 

} 
0
을 여기

내 코드입니다

귀하의 질문을 이해한다면, 당신은 두 개의 서로 다른 URL의 내용을 같은 파일에 쓰고 싶습니다. 당신은 URL 객체의 List를 가질 수 있고 그리스트를 반복하여 읽고 쓸 수 있습니다.

List<URL> al = new ArrayList<>(); 
     URL oracle = new URL("http://www.oracle.com/"); 
     URL google =new URL("http://www.google.com"); 
     al.add(oracle); 
     al.add(google); 
     BufferedReader in=null; 
     BufferedWriter psout=null; 
     for(URL url: al){ 
     URLConnection yc = url.openConnection(); 
     in = new BufferedReader(new InputStreamReader(
     yc.getInputStream())); 
     String inputLine; 
    psout = new BufferedWriter(new FileWriter("final.txt")); 
     while ((inputLine = in.readLine()) != null) { 
     psout.write(inputLine); 
     System.out.println(inputLine); 
     } 

     }  in.close(); 
     psout.close();