如何通过第一列对excel文件进​​行排序? java的

时间:2013-05-14 08:04:38

标签: java mysql sorting

我必须创建一个程序,我们从excel文件中读取数据enter image description here,然后将它们存储在具有降序ID的mysql表中。 我已经让程序读取数据并使用APACHE POI在控制台中打印它们,在excel文件的第一行创建表,然后存储其余数据。但我想通过他们的ID来存储。所以我创建了一个函数,首先我将读取ID所在的第一列,然后使用LinkedHashMap读取其余数据。

我如何在ID中进行排序?有人可以帮助我吗?我已经把空间放在我认为应该做出改变的地方。

2 个答案:

答案 0 :(得分:0)

将每个TableRow添加到您的List。使用Collections sort()方法对数据进行排序,然后迭代并插入。

您可以自定义compareTo()以确定订单。

@Override
public int compareTo(TableRow o) {
    // for descending order
    return this.getID().compareTo(o.getID())*(-1);
}

使用Comparator,您可以执行以下操作:

 new Comparator<TableRow>() {
        @Override
        public int compare(TableRow o1, TableRow o2) {
             // for descending order
            return o1.getID().compareTo(o.getID())*(-1);
        }
  }

答案 1 :(得分:0)

您可以使用TreeMap。将Excel工作表的id列值作为树形图的KeyId传递。它会自动对您的数据进行排序......