我对日期有疑问。我使用以下命令获取日期:measure.getDate()
,我的日志中获得0 Sun Jun 09 14:09:00 CEST 2012结果。但是,当我使用measure.getDate().getDay())
时,我得到了0
,对于measure.getDate().getMonth()
,我得到了5
的结果,对于measure.getDate().getYear())
我得到了112。如何获得日,月和您的格式?
JSONArray jsonArray;
try {
jsonArray = new JSONArray(response);
List<Measure> measures = new Measure.BuilderJSON().buildList(jsonArray);
for(Measure measure: measures){
addParamsToLists(measure);
Log.v("eqwdasfas1", ""+measure.getDate().getDay());
Log.v("eqwdasfas2", ""+measure.getDate().getDate());
Log.v("eqwdasfas3", ""+measure.getDate().getYear());
Log.v("eqwdasfas4", ""+measure.getDate().getMonth());
Log.v("eqwdasfas5", ""+measure.getDate());
}
} catch (JSONException e) {
e.printStackTrace();
}
我不知道为什么getDate()返回好的值而其他函数返回错误
最佳答案
从the documentation到Date
:
在Date类的所有接受或返回年,月,日,时,分和秒值的方法中,使用以下表示形式:
年y由整数y-1900表示。
一个月由0到11之间的整数表示; 0是一月,1是二月,依此类推;因此11月是12月。
日期(一个月中的一天)通常以1到31之间的整数表示。
一个小时用0到23的整数表示。因此,从午夜到凌晨1点的小时是0,从中午到下午1点的小时是0。是12点。
分钟通常以0到59之间的整数表示。
秒由0到61之间的整数表示;值60和61仅在leap秒出现,甚至仅在实际上正确跟踪leap秒的Java实现中才出现。
因此,对于您的问题,六月是5,星期日是0,112 = (2012 - 1900)
。
关于android - 数据值错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15407613/