Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在JAVA中格式化Date.toString()输出_Java_Date_Jcalendar - Fatal编程技术网

在JAVA中格式化Date.toString()输出

在JAVA中格式化Date.toString()输出,java,date,jcalendar,Java,Date,Jcalendar,我使用JComboCalendar小部件让用户选择一个日期。JComboCalendar有一个方法getDate(),它返回一个日期对象 ,Date.toString应返回格式为yyyy mm dd的字符串,但我收到的字符串如下: Fri Nov 08 13:08:38 CET 2013 如何获得预期的输出?如何像dd-mm-yyyy一样格式化它,这是一个额外的收获,因为我刚刚发现如何以给定的格式读取字符串,而不是如何格式化输出。将帮助您 SimpleDateFormat sdf = new

我使用JComboCalendar小部件让用户选择一个日期。JComboCalendar有一个方法getDate(),它返回一个日期对象

,Date.toString应返回格式为yyyy mm dd的字符串,但我收到的字符串如下:

Fri Nov 08 13:08:38 CET 2013
如何获得预期的输出?如何像dd-mm-yyyy一样格式化它,这是一个额外的收获,因为我刚刚发现如何以给定的格式读取字符串,而不是如何格式化输出。

将帮助您

 SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy");
 String str = sdf.format(yourDateInstance);

使用以下格式设置日期:

new SimpleDateFormat("dd-MM-yyyy").format(comboCalendar.getDate())
至于你的另一个问题,你打开了错误的文档。
getDate()
返回
java.util.Date
而不是
java.sql.Date
正确的文档:

请尝试以下方法:

SimpleDateFormat formatDate = new SimpleDateFormat("yyyy-MM-dd");
String formattedDate = formatDate.format(new Date()); // Sample date to be formatted
System.out.println(formattedDate); // Watch the output
试试这个

SimpleDateFormat d1 = new SimpleDateFormat("yyyy-MM-dd");
    Date d=new Date();
    System.out.println(d1.format(d));

output2013-11-08

java.sql.Date
java.util.Date
不同。“你基本上看的是完全错误的javadoc。”巴卢斯同意。你需要检查你的进口罗马!!漂亮的接球@BalusC!我的导入还可以,我只是在谷歌上查找文档时犯了一个错误:)我没有否决这一点,但这更适合作为评论,而不是信息性的回答。更新:这也是人们为什么投票的一个谜!作者甚至没有给SimpleDateFormat添加链接……是的,我在想否决票的背景是什么(我明白了,你是在寻找代码。这更适合评论而不是回答。好吧,我下次会注意的。@duffymo公平地说,这并没有回答主要问题,所以它应该是一个评论。即使这样,仅仅抛出一个类名也不能真正回答其他问题。这将打印2013-41-08,因为
mm
是分钟,而不是月。请改用
yyyy-MM-dd