我有一个显示当前日期的Jspinner(这种格式为“yyyy // mm // dd”)我想只获得当前日期而不是时间,当我使用System.out.println时(Spinner.getvalue() )。它也显示这样的时间(2013年9月9日02:47:53 IST 2013)。我只想要当前日期2013/09/08
答案 0 :(得分:2)
public Object getValue()
返回模型的当前值,通常为此值 由编辑显示。如果用户更改了显示的值 通过编辑器,模型的值可能与此不同 编辑器,请参阅类级别javadoc以获取如何使用的示例 处理这件事。
此方法只是委托给模型。它相当于:
getModel().getValue()
这意味着当您调用getValue()
方法时,您将获得一个java.util.Date
对象(因为您正在使用SpinnerDateModel
我猜)。当您使用System.out.println(Spinner.getvalue())
时,输出会显示toString()
类的默认java.util.Date
实现,该实现很长且包含时间。
如果您想以此格式yyyy/mm/dd
显示日期,请尝试:
System.out.println(new SimpleDateFormat("yyyy/MM/dd").format(spinner.getValue()));
注意:不要对java.util.Date
对象及其String
表示感到困惑。
答案 1 :(得分:0)
似乎您需要使用一些日期转换工具,如SimpleDateFormat。
SimpleDateFormat formater = new SimpleDateFormat("yyyy/MM/dd");
String spinnerValue = formater.format(Spinner.getvalue());
System.out.println(spinnerValue);
所有SimpleDateFormat信息和日期模式都可以在这里找到: http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html