黑莓Java到日期转换的字符串
问题描述:
我使用下面的代码将字符串转换为日期,但它在转换时应用设备的时区。
我不需要这个,但我想相同的日期/时间从字符串如黑莓Java到日期转换的字符串
String = "2009-07-31 07:59:17.427"
Date = 2009-07-31 07:59:17.427
Date formatter = new Date(HttpDateParser.parse("2009-07-31 07:59:17.427"));
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
String strCustomDateTime = dateFormat.format(formatter);
答
什么问题,到底是什么?您试图将“2009-07-31 07:59:17.427”转换为时间点,但是,这并没有指定一个独特的时间点 - 没有时区。所以你确实需要一个时区,而图书馆则需要选择一个,即平台当前的时区。
如果问题是你要指定一个不同的时区,然后调用DateFormat.setTimeZone():
format.setTimeZone(TimeZone.getTimeZone("your time zone"));
答
您可能需要帐户默认时区偏移和你约会解析后得到:
public static String StringToDate(String dateToParse) {
Date formatter = new Date(HttpDateParser.parse(dateToParse));
SimpleDateFormat dateFormat = new SimpleDateFormat(
"yyyy-MM-dd HH:mm:ss.SSS");
int offset = TimeZone.getDefault().getRawOffset();
formatter.setTime(formatter.getTime() + offset);
String strCustomDateTime = dateFormat.format(formatter);
return strCustomDateTime;
}
我在Blackberry中的setTimeZone方法出现错误。我只想将字符串格式的日期表示按原样获取到日期格式。 – Neo 2009-07-31 10:31:10