【发布时间】:2015-07-12 21:01:45
【问题描述】:
如何在两个日期之间实现RowFilter?日期为字符串格式。是否需要将格式更改为日期格式才能应用RegexFilter?
我尝试使用以下方法,但失败了:
DefaultTableModel model = (DefaultTableModel) easypath.masteBusiness_table.getModel();
easypath.masteBusiness_table.setModel(model);
TableRowSorter<TableModel> rowSorter = new TableRowSorter<>(easypath.masteBusiness_table.getModel());
easypath.masteBusiness_table.setRowSorter(rowSorter);
rowSorter.setRowFilter(RowFilter.regexFilter(startD+"\\s+(.*?)\\s+"+endD));
我知道我的过滤错误,因为(startD+"\\s+(.*?)\\s+"+endD)); 仅用于搜索单个字符串,但作为新手,我非常感谢任何建议。
更新
我刚刚看到这个(http://docs.oracle.com/javase/7/docs/api/javax/swing/RowFilter.html),其中RowSorter<M,I>,M 是模型,I 是整数值,不符合我的标准
【问题讨论】:
-
数据是存储为日期对象还是字符串?
-
日期存储为字符串
-
如果将它们存储为日期会更容易,因为您可以轻松比较日期,example 比较基于字符串的日期。您需要定义您的 Owen RowFilter,它获取开始日期和结束日期,然后比较每一行以查看它是否在指定的范围之间。 RowFilter example
-
会尽力让你知道...
标签: java string swing jtable rowfilter