当前位置: 首页 > 知识库问答 >
问题:

用XSSFWorkbook追加Excel列

公西培
2023-03-14

我有一个excel表,我想有选择地将其内容转移到列表中。该对象有2个属性:字符串id、String str

我想将第一列设置为ID。我把这部分做对了。我还想追加第3、4、6、7列的值。例如,如果我的excel看起来像:

4404A01459C1    || A1 || 13 || 14 || B1 || 8 || 7

我想要4404A01459C1作为id(再次,我得到了这个部分)。然后我要13.14.8.7,跳过A1和B1,用;我如何做到这一点?

FileInputStream inputStream = new FileInputStream("D:\\work\\calculatepi\\test.xlsx");
    Workbook workbook = new XSSFWorkbook(inputStream);

    Sheet firstSheet = workbook.getSheetAt(0);
    Iterator<Row> rowIterator = firstSheet.iterator();

    List<SampleGene> sgl=new ArrayList<SampleGene>();

    while(rowIterator.hasNext()){
        Row row  = rowIterator.next();
        Iterator<Cell> cellIterator = row.cellIterator();
        SampleGene sg = new SampleGene();
        sg.setId(row.getCell(0).toString());
        //need help here

        sgl.add(sg);
    }
    return null;

共有1个答案

宁鹏程
2023-03-14

尝试使用StringBuilder并在CellIterator上迭代;将每个单元格值追加到StringBuilder。

StringBuilder sb = new StringBuilder();
while(cellIterator.hasNext())
{
sb.append(cellIterator.next().toString());
sb.append(";");
}
sg.setStr(sb.toString());
 类似资料:
  • 问题内容: 我正在使用以下代码: xlsx文件本身具有25,000行,每行包含500列的内容。在调试过程中,我看到创建XSSFWorkbook的第三行需要很长时间(1小时!)来完成此语句。 有没有更好的方法来访问原始xlsx文件的值? 问题答案: 首先,当您有文件时,不要从InputStream加载XSSFWorkbook!使用InputStream需要将所有内容缓冲到内存中,这会占用空间并占用时

  • 我的理解是AbstractExcelView类函数buildExcelDocument不支持XSSFWorkbook(https://jira.spring.io/browse/spr-6898)。 我试图通过如下实现buildExcelDocument函数来解决这个问题: 使用HSSFWorkbook时,上述所有代码都可以工作。工作簿的数据已正确创建,可以下载,并将使用Microsoft Exc

  • 问题内容: 我正在编写一个包含10个存储桶列表的简单哈希表。使用内置函数计算索引,然后对表大小取模。但是,当我尝试将对象附加到该索引的存储桶列表时,它会附加到每个存储桶列表。我尝试用不同的方式定义add_HT,但我一直得到相同的结果。我究竟做错了什么? 问题答案: 使指向 同一列表 的指针数量增加。这里不是问题。您需要定义为。

  • 我正在尝试将excel文件转换为XSSFWorkbook,我有大约7000行和大约145列。将excel文件转换为第2行的XSSFWorkbook大约需要15分钟,代码如下:- 我不想向XFFSWorkbook添加7000行,只想在第2行转换时向XFFSWorkbook添加30行? 如果没有,如何减少将excel转换为XSSFWorkbook所需的时间?

  • 问题内容: 我在div页上: 并在jQuery中: 这为我产生了: 我想在表中收到此信息: 我在做: 但这为我产生了: 为什么?我怎样才能正确地做到这一点? 问题答案: 这行: 附加到不是新的。 有几种方法: 但是,通过上述方法,添加样式和动态地进行处理变得不那么容易管理。 但是,如何做到这一点,却几乎可以实现您的期望: 希望这会有所帮助。

  • 问题内容: 无法附加到吗? 我正在尝试附加到对象列表。摘录之后的片段是每当作业完成时都会调用的函数。 但是,当我尝试读取它时,我只会得到文件中的第一个。然后我得到java.io.StreamCorruptedException。 要阅读我正在使用 我不知道会出现多少个对象,因此我在阅读时没有例外。根据Google的说法,这是不可能的。我想知道是否有人知道吗? 问题答案: 这是窍门:子类Object