2011-10-01 5 views
3
Formatter fmt=new Formatter(); 
Calendar cal=Calendar.getInstance(); 
fmt.format("%tc",cal); 
System.out.print(fmt); 
// System.out.print(fmt); 대신 JTextAreafmt의 값을 인쇄하고 싶습니다.하지만 JTextArea는 문자열 값만 받아들입니다. 어떻게 Formatter fmt을 동등한 String value로 변환 할 수 있습니까?

다음 변환을 어떻게 수행 할 수 있습니까?

답변

3
textField.setText(fmt.toString()); 
3

체크 아웃 Formatter.toString() : 당신이 String.format()를 사용하는 경우

Formatter fmt = new Formatter(); 
Calendar cal = Calendar.getInstance(); 
yourTextarea.setText(fmt.format("%tc",cal).toString()); 

적은 코드가 Formatter 내부적으로 작성

이 여러 번 일을 계획하는 경우
Calendar cal = Calendar.getInstance(); 
yourTextarea.setText(String.format("%tc", cal)); 

, 당신도 할 수 있습니다 setText() 대신 append()을 사용하면 JTextArea의 이전 콘텐츠를 대체하지 않기 때문에 probab 예를 들어 System.getProperty("line.separator")의 값을 덧붙여 println()과 같은 줄 바꿈을 사용하면됩니다.

+1

대신'\ r \ n'을 사용하는 것이 좋습니다.'System.getProperty ("line.separator")'를 사용하는 것이 좋습니다. – corsiKa

+0

사실, 대신 내 대답을 편집하여 사용했습니다. –

0

그냥 fmt.toString()으로 전화하면 일반 문자열 (System.out.print)이 내부적으로 수행됩니다.

관련 문제