在Android中获取当前时区的年份值

时间:2012-03-10 09:28:36

标签: android time

Android编程

以下代码int year = new Time().year;返回默认区域的年份值。所以我得到1970年作为年份的回报值。

我使用以下构造函数与字段年String zone=new Time().timezone;
int year = new Time(zone).year;


我得到区域的值为亚洲/加尔各答,但对于年份价值,我仍然只有1970年。我可以知道为什么我今年没有?有没有其他方法可以实现相同的目标?

2 个答案:

答案 0 :(得分:4)

检查timezoneIDAsia/Calcutta。如果您是亚洲/加尔各答时区但是如果您不是,并且想要设置刚刚设置为TimeZone est = TimeZone.getTimeZone( "Asia/Calcutta" );
 否则请使用以下....

        Calendar cal = Calendar.getInstance();
        String timezoneID = TimeZone.getDefault().getID();
        cal.setTimeZone(TimeZone.getTimeZone(timezoneID));
        int year=cal.get(Calendar.YEAR);
        System.out.println(year);

答案 1 :(得分:2)

您是否获得了日历实例?

Calendar c = Calendar.getInstance(); 
 int year=c.get(Calendar.YEAR);

试试这个..