【发布时间】:2012-09-04 12:51:50
【问题描述】:
一)。我有 3 个字符串代表日期、时间和时区;例如:
String date = "2012-09-04";
String time = "01:30:17";
String timeZone = "UTC";
我想使用这些字符串创建一个日期。
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss z");
Date createdDate = formatter.parse(date + " " + time + " " + timeZone);
不起作用 - 我收到消息“无法解析的日期”。
b)。如何获取特定时区的 Android 设备日期? 我找到了一种将当前时间转换为例如 UTC 时区的方法:
Calendar cldr = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
String dateInUTCTimeZone = sdf.format(cldr.getTime());
但我希望结果是一个 Date 对象。
【问题讨论】:
-
这不是 android 特定的。您是否尝试过在谷歌上搜索“Java 时区”或类似内容?
-
而不是在解析外部生成字符串时附加它,而不是尝试解析整个字符串
标签: java android date timezone