【发布时间】:2015-12-20 20:25:35
【问题描述】:
我正在解析从用户查询接收的日期和来自 XML 文件的另一个日期。 当我只想获得年份时,它会打印 1 而不是年份,方法是:
calender.YEAR
这是代码:
Elements date = doc.getElementsByTag("DATE");
DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
Date inputDate = dateFormat.parse(obj.tryParse(dateFrom));
Date xmlDate = dateFormat.parse(obj.tryParse(date.get(0).text()));
Calendar calInput = Calendar.getInstance();
Calendar calXml = Calendar.getInstance();
calInput.setTime(inputDate);
calXml.setTime(xmlDate);
System.out.println(calInput.YEAR +" "+ calXml.YEAR +" = "+calInput.getTime().toString()+"|||"+ calXml.getTime().toString());
if(calInput.YEAR != calXml.YEAR)
continue;
这是一个输出示例:
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Tue Jan 01 00:00:00 IST 2002
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Tue Jan 01 00:00:00 IST 2002
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Tue Jan 01 00:00:00 IST 2002
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Tue Jan 01 00:00:00 IST 2002
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Tue Jan 01 00:00:00 IST 2002
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Tue Jan 01 00:00:00 IST 2002
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Tue Jan 01 00:00:00 IST 2002
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Tue Jan 01 00:00:00 IST 2002
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Tue Jan 01 00:00:00 IST 2002
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Tue Jan 01 00:00:00 IST 2002
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Sun Feb 01 00:00:00 IST 2004
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Mon Apr 01 00:00:00 IDT 2002
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Mon Apr 01 00:00:00 IDT 2002
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Mon Apr 01 00:00:00 IDT 2002
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Mon Apr 01 00:00:00 IDT 2002
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Mon Apr 01 00:00:00 IDT 2002
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Mon Apr 01 00:00:00 IDT 2002
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Mon Apr 01 00:00:00 IDT 2002
Info: 1 1 = Wed Jan 01 00:00:00 IST 2003|||Mon Apr 01 00:00:00 IDT 2002
【问题讨论】:
-
@YassinHajaj ,它应该打印 2003 和 2004 等!为什么它打印 1 1 !?
-
因为您正在打印一个值为
1的常量。