我该如何进行以下转换?

时间:2011-10-01 13:33:43

标签: java string swing

Formatter fmt=new Formatter();
Calendar cal=Calendar.getInstance();
fmt.format("%tc",cal);
System.out.print(fmt);

//而不是System.out.print(fmt);我想在fmt上打印JTextArea的值。但是我们知道JTextArea只接受字符串值。所以如何转换Formatter fmt为等效String value

3 个答案:

答案 0 :(得分:3)

textField.setText(fmt.toString());

答案 1 :(得分:3)

结帐Formatter.toString()

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

如果您使用String.format()在内部创建Formatter,则代码较少:

Calendar cal = Calendar.getInstance();
yourTextarea.setText(String.format("%tc", cal));

如果您打算多次执行此操作,您可能还想使用append()代替setText(),而不是替换JTextArea中的任何先前内容,可能会附加{} System.getProperty("line.separator")获得println()之类的领先换行符。

答案 2 :(得分:0)

只需致电fmt.toString(),它会为您提供常规字符串(System.out.print在内部执行相同的操作)。