我已经使用 JCalender 来获取日期。它像这样返回日期
2012 年 3 月 1 日星期四 18:35:53 PST
但我需要的是这种格式。
2012 年 9 月 4 日
这是我正在使用的代码:
java.util.Date s = txt_dob.getDate();
您可以根据需要尝试SimpleDateFormat或DateFormat的其他实现来格式化您的日期字符串
找到解决办法了!!!!!!!!!!!!:) :)
String s = ((JTextField)txt_dob.getDateEditor().getUiComponent()).getText();
具有讽刺意味的是,即使你给我们的代码片段并没有真正表明你自己解决问题的努力,或者告诉我们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());
如果这不起作用,您将不得不给我们更多的背景信息。