gpt4 book ai didi

java - 从 Excel 文件读取数据的更好方法

转载 作者:行者123 更新时间:2023-12-02 04:19:15 24 4
gpt4 key购买 nike

我必须从大约有 40 列的 Excel 文件中读取数据,并且我正在使用列索引一一读取它。即:

Cell cell = row.getCell(0);
if (!(cell == null || cell.getCellType() == Cell.CELL_TYPE_BLANK)) {
cell.setCellType(Cell.CELL_TYPE_STRING);
// set in setter
}

但是这种方法与 Excel 文件的结构紧密结合,因为如果在其间添加任何新列,则将需要主要代码(列的索引值)。

请建议我任何从 Excel 文件读取数据的有效方法,该方法应该与 Excel 的结构松散耦合,或者是否有任何其他方法可以提供列与 Java 对象字段的绑定(bind)。

最佳答案

我建议添加一个带有列信息(即名称)的标题行并相应地处理列(即将它们映射到java对象)。也许您甚至可以使用反射 API 来反序列化对象。类似的东西用于将java对象保存到数据库,我在这里不太擅长,但你可以谷歌并检查。

该标题行可以在 XL 中隐藏。

或者您可以将映射信息放入您的 java 代码中(不修改原始 XL 文件) - 只需为其定义一个数据结构,而不是像 row.getCell(0) 那样硬编码常量 - 它应更改为解释有关 XL 文件中列的元数据。

换句话说,您将拥有正在处理的每个 XL 文件的数据定义,以及根据该定义处理 XL 文件的通用代码。您应该有一个以 XL 文件名和定义文件作为参数的例程。

关于java - 从 Excel 文件读取数据的更好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32974622/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com