본문 바로가기

Code/Java

문자열 쪼개기

Java 1.3에서 1.4로 넘어가는 단계에서 처음으로 접했던 자바.
그 당시 scanf를 대신하는 코드를 만들기 위해

1) BufferedReader를 통해 한줄씩 읽어서
2) StringTokenizer로 자르고,
3) Double.parseDouble() 등을 통해 형변환

물론 지금도 제일 많이 쓰는 조합이다.

Java 5 이후, Scanner의 등장과 '응용소프트웨어 공학' 강의 준비를 하면서, 보다 쉽게 사용할 수 없을까 하여
1) Scanner 생성
2) scan.hasNext() 한 동안 scan.nextDouble(), scan.next() 등 사용
쉬운 예제에서는 확실 쉽고 간편하다.
하지만, 몇 줄을 건너뛰거나, 형태가 섞여 있을 경우, 말썽을 부리는 경우가 종종 있다.
이럴 땐 역시 예전 방식으로...(코드는 약간 길어지지만 마음은 편하다.)


마지막으로, StringTokenizer의 반복되는 코드로 지루하던 차에
String.split() 메소드가 있었다는 사실이 기억났다.
String[]를 리턴값으로 갖기 때문에 짧은 코드로 문자열을 잘라낼 수 있다.
하지만, 스페이스로 자를 경우에는 너무 많이 잘라버린다는 것;
그리고 csv를 ,(콤마)로 자를 경우에는 빈 여백 처리를 위해 trim()을 한번 더 호출 해 주어야 한다는 것.
이 정도만 주의하면, 간단한 파일 처리에는 유용하게 사용가능할 것으로 생각된다.

'Code > Java' 카테고리의 다른 글

eclipse 부팅을 빠르게...  (0) 2010.04.14
Java에서 splash 화면 구현하기  (0) 2010.04.13
이클립스 기본 디렉토리 설정 다시하기  (0) 2009.07.16
Cola 설치 후.  (0) 2008.07.02
Cola  (0) 2008.07.01