0

我现在在香港。如何从美国获得年月日?
我努力了:

Calendar calendar = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("dd-MMM-yyyy hh:mm:ss z");
sdf.setTimeZone(TimeZone.getTimeZone("America/Los_Angeles"));
sdf.format(calendar.getTime());

但我不知道如何得到年,月。请帮忙

4

3 回答 3

1

以下代码产生三个所需的变量:

Calendar calendar = Calendar.getInstance();
Calendar LATime = new GregorianCalendar(TimeZone.getTimeZone("America/Los_Angeles"));
LATime.setTimeInMillis(calendar.getTimeInMillis());
int year = LATime.get(Calendar.YEAR);
int month = LATime.get(Calendar.MONTH);
int date = LATime.get(Calendar.DATE);

希望能帮助到你。

于 2013-01-17T03:55:34.427 回答
0

您还可以使用有用的库进行日期时间操作,例如Joda lib

我确实尝试在将UTC时间转换为本地时间时使用它,您可以尝试在不同时区之间转换。祝你好运 !:)

于 2013-01-17T03:30:08.733 回答
0

您需要执行以下操作(假设 dateObj 是香港时间的日期实例):

SimpleDateFormat sdf = new SimpleDateFormat("dd-MMM-yyyy hh:mm:ss z");
sdf.setTimeZone(TimeZone.getTimeZone("America/Los_Angeles"));
String usaDateStr= sdf.format(dateObj);

请参阅此示例

于 2013-01-17T03:20:31.023 回答