프로그래밍 정리/자바

[Java - 자바] MessageFormat

주누다 2014. 3. 2. 21:51
반응형

MessageFormat

- 데이터를 정해진 양식에 맞게 출력할 수 있는 메서드

- 데이터가 들어갈 자리를 마련해 놓은 양식을 미리 작성

- SimpleDateFormat의 parse처럼 MessageFormat의 parse를 이용.

String msg = "Name : {0} Tel : {1} BirthDay : {2}";


- '{숫자}'로 표시된 부분이 데이터가 출력될 자리.

- 숫자는 배열처럼 인데스가 0부터 시작.

- 객체 배열이기 때문에 String 이외에도 다른 객체들이 지정될 수 있음.

Object[] arguments = {"테스트", "01-234-5678", "03-02"};

String result = MessageFormat.format(msg, arguments);

System.out.println(result);


result => Name : 테스트 Tel : 01-234-5678 BirthDay : 03-02

         -> Name : {0}     Tel : {1}             BirthDay : {2}



- 홑따옴표(')는 MessageFormat의 양식에 escape문자로 사용 

- 문자열 msg내에서 홑따옴표를 사용하려면 홑따옴표를 연속으로 두 번 사용해야함.


-----------------------------------------------------------------------------------


String pattern = " Message 목록 : ({0}, {1}, {2});";


MessageFormat mf = new MessageFormat(pattern);


- MessageFormat의 parse를 사용하기 위해서는 패턴과 구조가 같아야함.

- 구조가 다를 경우 ParseException 발생.

- parse(String source)를 이용해서 출력된 데이터로부터 데이터만을 뽑아낼 수 있음.


String msg1 = " Message 목록 : (테스트, 01-234-5678, 03-02);";


MessageFormat mf = new MessageFormat(pattern);

Object[] objs = mf.parse(msg1);"


objs[0] => 테스트

objs[1] => 01-234-5678

objs[2] => 03-02




반응형

'프로그래밍 정리 > 자바' 카테고리의 다른 글

[Java - 자바] 정규식, Pattern, Matcher  (0) 2014.03.03
[Java - 자바] Random, Math.random()  (0) 2014.03.02
[Java - 자바] DecimalFormat  (0) 2014.03.02
[Java - 자바] DateFormat  (0) 2014.03.02
[Java - 자바] Date 서식  (0) 2014.03.02