我正在解析從用戶查詢接收到的日期和來自XML文件的另一個日期。 當我想要得到公正年,其打印1,而不是一年,通過使用:Calender.YEAR不能打印正確的值
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的常數。 – Andreas