我使用JCalender来获取日期。它像这样返回日期
Thu Mar 01 18:35:53 PST 2012
但我需要的是这种格式。
2012年9月4日
以下是我正在使用的代码:
java.util.Date s = txt_dob.getDate();
答案 0 :(得分:0)
具有讽刺意味的是,即使您提供给我们的代码片段并没有真正说明您自己解决问题的方法,或者告诉我们您正在使用哪个JCalendar
库,我想我可以猜到是什么错。
你可能只是在toString()
上调用java.util.Date
(可能是隐含的)。不要这样做 - 它将始终采用本地时区,以及基于系统区域设置的默认格式。
相反,请使用SimpleDateFormat
- 并记住要适当地设置时区,并且可能使用区域设置。例如:
SimpleDateFormat formatter = new SimpleDateFormat("yyyy MMM dd", Locale.US);
formatter.setTimeZone(TimeZone.getTimeZone("UTC"));
String text = formatter.format(txt_dob.getDate());
如果这不起作用,你必须给我们更多的背景。
答案 1 :(得分:0)
您可以尝试SimpleDateFormat或DateFormat的其他实现来根据需要格式化日期字符串
答案 2 :(得分:0)
找到解决方案!!!!!!!!!!!! :) :)
String s = ((JTextField)txt_dob.getDateEditor().getUiComponent()).getText();