본문 바로가기

JAVA/Network

TextReader

package ex01_web;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;





public class Ex04_Text_Reader {

	public static void main(String[] args) {

		//웹상의 텍스트 파일 읽기
		//구글: "기상청 rss"검색 -동네예보>중기예보 - 전국
		
		//주소
		String spec = "http://www.kma.go.kr/weather/forecast/mid-term-rss3.jsp?stnId=108";
	
		URL url =null;
		HttpURLConnection con =null;
		BufferedReader reader =null;
		BufferedWriter writer=null;
		
		try {
			url= new URL(spec);
			con=(HttpURLConnection)url.openConnection();
			//입력스트림 생성
			reader =new BufferedReader(new InputStreamReader(con.getInputStream()));
			//출력 스트림 생성
			
			 // 출력스트림 생성
      File dir = new File("C:/storage");
      if(dir.exists() == false) {
        dir.mkdirs();
      }
			File file =new File(dir,"weather1.xml");
			writer= new BufferedWriter(new FileWriter(file));
			//입력스트림으로 부터 한줄씩 읽기 
			String line =null;
			while((line=reader.readLine())!=null)
			{
				writer.write(line+"\n");
			}
		
	    // 결과 메시지
      System.out.println(file.getPath() + " 파일 내려받기 성공");
      
    } catch (MalformedURLException e) {  // url 생성
      System.out.println(e.getMessage());
    } catch (IOException e) {  // con 생성, reader 생성, writer 생성 등 
      System.out.println(e.getMessage());
    } finally {
      try {
        if(writer != null) writer.close();
        if(reader != null) reader.close();
        if(con != null) con.disconnect();
      } catch (Exception e) {
        e.printStackTrace();
      }
	
	
	}

}
}

'JAVA > Network' 카테고리의 다른 글

Encoder,Decoder  (0) 2023.08.17
BinaryInputStream  (0) 2023.08.17
HttpURLConnection  (0) 2023.08.17
URL  (0) 2023.08.17
날씨정보 URL 을 파일로 변환하여 원하는 디렉터리에 저장하기  (0) 2023.08.06