2014-08-27 63 views
3

我正在使用NetBeans IDE 8.0測試版。如何將兩個整數值作爲年份和月份添加到日期變量中?

我有2個整數與從數據庫表中獲得的值。

int year, month; 
try{ 
     string sql = "select * from item where item_id = i001"; 
     pst = conn.prepareStatement(sql); 
     rs = pst.executeQuery(); 

     rs.next(); 
     year = Integer.parseInt(rs.getString("warr_years")); 
     month = Integer.parseInt(rs.getString("warr_months")); 

} 
catch(SQLException e){ 
} 

而且我有一個字符串變量保存當前日期。

 DateFormat dateFormat = new SimpleDateFormat("YYYY-MM-dd"); 
     Date date = new Date(); 
     String d = dateFormat.format(date); 

現在我需要添加年份和月份到日期。 任何人都可以幫助我嗎?

+0

新的SimpleDateFormat( 「DD」);並添加到你的年月 – 2014-08-27 17:24:40

+1

Java 8已經極大地改進了這種處理,從JODA借用。新的課程。 – 2014-08-27 17:27:18

回答

3

你需要一個Calender來做到這一點。

Calendar c = Calendar.getInstance(); 
c.setTime(date); 
c.add(Calendar.YEAR, year); 
c.add(Calendar.MONTH, month); 
Date newDate = c.getTime(); 
+0

希望能解決你的問題:) – 2014-08-27 17:38:43

+1

謝謝!它做了!做得好! :) – amzer 2014-08-27 18:13:30

1

首先,您的year格式已關閉。這是「YYYY」而不是「YYYY」。接下來,你可以使用一個Calendar和像

int year = 10; 
int month = 2; 
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); 
Calendar cal = Calendar.getInstance(); 
cal.add(Calendar.YEAR, year); // <-- add year years to the Calendar. 
cal.add(Calendar.MONTH, month);// <-- add month months to the Calendar. 
System.out.println(dateFormat.format(cal.getTime())); // <-- display the result 

上面的代碼輸出的東西(今天,八月的2014年第27號) -

2024-10-27 
+0

謝謝!有效! – amzer 2014-08-27 18:13:59

相關問題