美好的一天。 我有另一个与 Jtable 相关的问题。 如果列内的日期(过期)超过或等于当前日期,我想更改表格的行颜色。
我试过这段代码,但出现错误:java.lang.NumberFormatException: For input string: "2012-03-15"
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar cal = Calendar.getInstance();
String expDateString = sdf.format(cal.getTime());
System.out.println(expDateString);
Double date = Double.parseDouble(expDateString);
Double val = Double.parseDouble(tableSummary.getModel().getValueAt(row, 6).toString());
for(int i=0; i<=tableSummary.getRowCount()-1; i++){
if(val >= date){
renderer.setBackground(red);
}
}
谢谢!
这是一个新代码:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar cal = Calendar.getInstance();
String expDateString = sdf.format(cal.getTime());
Date today = new Date(expDateString);
System.out.println("ang churva is " + today);
Date given = new Date(tableSummary.getModel().getValueAt(row, 6).toString());
for(int i=0; i<=tableSummary.getRowCount()-1; i++){
if(today.compareTo(given)>=0){
renderer.setBackground(red);
}
}
但我得到这个异常:java.lang.IllegalArgumentException at Date today = new Date(expDateString);
最佳答案
使用代码
DATEDIFF('d',NOW(),exdate)
在您的结果集查询中。它将返回差异。改变它可能以满足您的需要。
关于java - 如何比较 Jtable 中的当前日期和给定日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9718691/