///////
Search
🎃

fileReader

Youtube & Git 링크

[JAVA] 파일 읽어와서 String List로 만들기
Git

실습 파일

공공데이터포털 - 서울시 병의원 위치 정보
서울 열린데이터 광장 - 서울시 병의원 위치 정보
두 링크 중 하나 참고

Gradle Project 생성하기

New Project
Name : read-line-parser
Language : Java
Build system : Gradle

파일 읽어와서 String List로 만들기

import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; import java.util.ArrayList; import java.util.List; public class LineReader { public List<String> readLines(String filename) throws IOException { List<String> result = new ArrayList<>(); BufferedReader br = new BufferedReader(new FileReader(filename)); String str; while((str = br.readLine()) != null) { result.add(str); } return result; } public static void main(String[] args) throws IOException { String filename = "C:\\Users\\ocean\\Downloads\\서울시 병의원 위치 정보.csv"; LineReader lr = new LineReader(); List<String> lines = lr.readLines(filename); // 데이터의 수 출력 👉 데이터가 잘 담겼는지 lines 리스트 확인 System.out.println(lines.size()); } }
Java
복사
실행 결과
실습 파일 데이터 확인
데이터의 수가 같으므로 모든 데이터가 lines 리스트 안에 잘 들어갔다는 것을 확인 가능

Parser를 Interface를 이용해 확장 가능하도록 Refactoring

클래스 다이어그램

클래스 다이어그램
클래스 다이어그램 설명
위와 같이 PopulationsStatParser(클래스) 와 같이 추가로 구현체가 생성되어도 위와 같이 LineReader나Parser를 수정하지 않아도 됨

readLines Refactoring 실습

readLines 반환 타입 변경 & Parser 인터페이스 생성
Parser의 구현체 & Hospital 클래스 생성
실행을 위한 Main 클래스 구현 & LineReader 클래스 수정