请找到我的下面的代码什么是任何时间的TimeStamp值将它转换为所需的TimeZone,并为您提供requiredTime Zone的日期。它正常工作日期变量,但我需要(日期)数据类型中的值,所以我使用相同的SimpleDataFormat对象解析它,但它返回一个不同格式的值,而不是SimpleDataFormat对象中提到的值。
private Date getDateOfTimeZone(Timestamp timeStamp, String timeZoneCode)
throws ParseException {
SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("dd-MM-yy");
DATE_FORMAT.setTimeZone(TimeZone.getTimeZone(timeZoneCode));
String date = DATE_FORMAT.format(timeStamp);
return DATE_FORMAT.parse(date);
}
Input Varibles : TimeStamp : 2013-11-01 16:19:37.0 , TimeZone : "IST"
Date value is coming as : 02-11-13 (Correct)
But Parse() is returning me : Fri Nov 01 14:30:00 EDT 2013.
我可以看到日期是根据timeZone转换的,但为什么解析不会以所需格式返回,即“dd-MM-yy”。
答案 0 :(得分:5)
parse
方法返回日期。
当您打印Date
时,您将获得toString()
方法的输出,这是您所看到的(2013年12月1日星期五14:30:00)
要以您希望的格式打印它,您可以使用format
方法将其转换为字符串,然后将其打印出来。