간단하게 텍스트 파일에 아래와 같은 CPU,RAM,메인보드 정보가 있다고 해보자

101 Intel i3 110000
102 Intel i5 200000

201 DDR3 4G 40000
202 DDR3 8G 80000

301 ASRock B85M 80000
302 ASUS H87 130000

item.txt

 

파일 오픈을 해보자!

 

try {  //예외 처리는 기본으로 해 줘야 한다

//파일에서 스트림을 통해 주르륵 읽어들인다

BufferedReader in = new BufferedReader(new FileReader("item.txt"));

 

//요 s에다가 한 줄씩 읽어 올거다

String s;

  

//반복한다! 언제까지? s에 앞서 읽어온 in이라는 문자 스트림에서 한 줄을 읽어 오는게 실패할 때까지!

while ((s = in.readLine()) != null) {

//그렇게 한 줄 가져와서.. 스플릿으로 조각조각 내 준다. 파싱 기준은 공백인 \t 로 하자

String[] split = s.split("\t");

 

//아래 변수들은 클래스에 선언되어 있음을 가정한다

modelcode = Integer.valueOf(split[0]); //첫째 조각은 모델 코드에
modelname = split[1]; //둘째 조각은 모델 네임에
modelprice = Integer.valueOf(split[2]);//셋째 조각은 모델 가격에 입력한다

 

 //전제조건

 //list는 ArrayList이다, Model은 컴퓨터 부품을 저장할 붕어빵 트....ㄹ 이 아니고 클래스다

 

 //그 후 적절한 리스트나 자료구조에 투입한다!

      list.add(new Model(modelcode, modelname, modelprice));

      }

      //다 뽑아먹었으니 버퍼리더를 닫아 준다.
      in.close();
      } catch (IOException e) {

  //혹시 입출력 에러가 발생했다면 어떤 에러인지 출력하고 끄자.

  System.err.println(e);

  System.exit(1);

}

 

결과적으로 list라는 ArrayList에 Model이란 클래스 구조로 txt파일 내용이 들어갔다!

해피엔딩

 

 

Posted by 안드로메다에서 온 프로그래머