我有一个程序,我必须从 excel 文件中读取数据并将它们存储在数据库中。我正在使用 LinkedHashmap 将每个单元格作为字符串读取。我的 excel 文件包含上述数据:
身份证 姓名 工资
5 克里斯汀 2349000
6 宝莲娜 1000
7 劳拉 12587458
8 电喷 34567
43 吉姆 45878
当我运行程序时,我成功地得到了我想要的结果。我现在遇到的问题是我想通过升序 ID 将数据存储在我的数据库中。我将如何做到这一点?我知道我必须使用 treeMap 但究竟如何?下面的代码用于将数据存储在数据库中。我正在从 excel 文件的第二行读取数据。
private static LinkedHashMap[] parseExcelColumnData(List sheetData) {
LinkedHashMap[] tousRows = new LinkedHashMap[sheetData.size() - 1];
for (int rowCounter = 1; rowCounter < sheetData.size(); rowCounter++) {
List list = (List) sheetData.get(rowCounter);
LinkedHashMap<String, Integer> tableFields = new LinkedHashMap(list.size());
String str;
String[] tousFields = new String[list.size()];
int i = 0;
for (int j = 0; j < list.size(); j++) {
Cell cell = (Cell) list.get(j);
if (cell != null) {
if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) {
tableFields.put(String.valueOf(cell
.getNumericCellValue()), cell.getCellType());
} else if (cell.getCellType() == Cell.CELL_TYPE_STRING) {
tableFields.put(cell.getStringCellValue(), cell
.getCellType());
} else if (cell.getCellType() == Cell.CELL_TYPE_BOOLEAN) {
tableFields.put(String.valueOf(cell
.getBooleanCellValue()), cell.getCellType());
}
}
}
tousRows[rowCounter - 1] = tableFields;
}