使用GcExcel可以轻松解决这个问题,下面是个例子,可以参考一下。 GcExcel中,可以根据区域把数据以二维数组的方式获取出来。这样子对第一列(ID)进行对比,筛选就可以解决问题了。 下面代码中用的是 sheet.getUsedRange(),如果你的Excel中,数据只是部分区域,可以使用getRange("A5:C10"),这种方式获取区域。 public void QueryData() { Workbook wb = new Workbook(); IWorksheet sheet = wb.getWorksheets().get(0); Object[][] data = (Object[][]) sheet.getUsedRange().getValue(); for (int i = 0; i 5) { //在这里获取其他列的数据即可 } } }