我现在在香港。我如何从美国获得年,月,日? 我试过了:
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());
但我不知道如何获得一年,一个月。 请帮忙
答案 0 :(得分: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);
希望它有所帮助。
答案 1 :(得分: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);
请参阅此example。
答案 2 :(得分:0)
您也可以使用有用的lib进行日期时间操作,例如Joda lib
我确实尝试在将UTC时间转换为本地时间时使用它,您可以尝试在不同的时区之间进行转换。 祝好运 ! :)