2016-03-15 90 views
-1

我试图获取当前日期在了Talend的工作,我用这作为我的上下文变量:的Java:转换字符串到日期

DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); 
Date date = new Date(); 
context.dateout = dateFormat.format(date); 

System.out.println(context.dateout); 

然而结果的类型为字符串,而不是一个日期。 我应该如何纠正它?

非常感谢!

+1

什么是“结果”?请发布[最小,完整和可验证示例](http://stackoverflow.com/help/mcve)以及所需的行为。 – MikeCAT

+2

'格式'是将'Date'变成'String'的操作。反函数名为'parse'。 –

+2

您是否试图将'Date'转换为相同的'Date'?为什么不只是'context.dateout = date;'? – Berger

回答

2

尝试这样做,根据下面的代码:

String string = "2016-03-15"; 
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.ENGLISH); 
try { 
    Date date = dateFormat.parse(string); 
    System.out.println(date); 
} catch (ParseException ex) { 
    System.out.println(ex); 
} 

我不知道你context.dateout手段。

2

请注意解析和格式之间的区别。

这是创建日期的字符串:

dateFormat.format(date); 

这是创建一个字符串的日期:

dateFormat.parse(dateString);