java - 将电子表格转换为 Javabean

标签 java excel javabeans

我有一个包含 x 行数的电子表格。每行都有一组静态数据。我想将这些数据转换为 Java bean。

例如,如果我的行看起来像这样......

|姓名|年龄|

|约翰|21|

我有一个像这样的简单 Bean...

public class Person{

private String name;
private int age;

//standard getters and setters

}

将电子表格转换为 Java bean 的最佳方法是什么?我目前正在使用 hssf 读取和写入工作表,但无法想到从电子表格创建 bean 的简单方法。我知道我可以简单地根据行数和列数调用所有 getter/setter,但必须有更好的方法,有什么想法吗?

最佳答案

使用JExcel API

像这样:

    public DataReader(File file) {
    this.file = file;
    Workbook workbook;
    try {
        workbook = Workbook.getWorkbook(file);
        sheet = workbook.getSheet(0);
    } catch (BiffException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

}

public void readData() throws ParseException {
    int sheetLength = sheet.getRows();
    System.out.println(sheetLength);

    for (int i = 1; i < sheetLength; i++) {
        String eventTitle = sheet.getRow(i)[22].getContents();
    }
}

你可以使用

sheet.getRow()[].getContents();

对于每一列。它将返回一个您可以解析 Bean 的字符串。

关于java - 将电子表格转换为 Javabean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22182285/

相关文章:

java - 如何将csv文件映射到java中的pojo类

c - 在 VBA Excel 中实现 Rosseta 代码 FFT

vba - 允许在一个打开的工作簿中使用 UDF,但使其在另一工作簿中不可见/不可用/不可访问

java - Jersey Bean 验证将 application/x-www-form-urlencoded 解释为 bean

java - 如何在ApplicationListener中初始化 Autowiring 对象?

java - prepareStatement 不适用于 sqlite

Java正则表达式用于连续重复的字母、数字和特殊字符

java - Java 中的链表节点(破解编码面试)

java - 使用java读取Excel工作表时,列不按顺序读取

Spring - 在测试中替换@Service bean