//특정 서버에서 클라이언트 측으로 제공하는 웹문서(html)을 읽어서 저장하는 코드
import java.net.*;
import java.io.*;
public class URLTest2 {
public static void main(String[] ar) throws IOException {
URL url = null;
BufferedReader br = null; // URL정보를 긁어오기 위함
BufferedWriter bw = new BufferedWriter(new FileWriter("sourceCopy.html"));
String str = null;
try {// URL은 프로토콜(http)부터 다 써줘야 한다
url = new URL("http://java.sun.com");
} catch (MalformedURLException e) {
System.out.println("잘못된URL 입니다");
e.printStackTrace();
}// URL 객체만 생성하고 통신하고 있는 상태는 아님
//데이터긁어오기 , 읽을때 파일명이아닌 네트웍 주소를 가져와야함
try {
br = new BufferedReader(new InputStreamReader(url.openStream()));
//url.openStream()을 넣으면 네트웍주소를 가져옴
while((str = br.readLine())!=null){
System.out.println(str);
bw.write(str);
bw.write("\r\n");
//서버쪽코드에는 접근할수 없고
//클라이언트쪽에서 보여지는 창의 코드들을 읽어서 출력함
//클라이언트쪽 코드도 막아놓을 수도 있음
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
bw.close();
br.close();
}
}
출력결과
특정 서버에서 클라이언트쪽으로 보내주는 html웹문서의 내용이 출력,저장됨
'자바·JSP' 카테고리의 다른 글
[오류] The type BASE64Decoder is not accessible due to restriction on required library (1) | 2013.08.19 |
---|---|
이클립스 디버깅 시 사선으로 브레이크 포인트 표시되면서 안될 때.. (3) | 2013.04.24 |
Java Application 중복 실행 방지 (0) | 2012.09.25 |
[Java] Class.forName(String className) (0) | 2012.09.03 |
콘솔 출력 코드 추적 (0) | 2012.08.29 |