Apache POI Excel - 如何配置要扩展的列?

新手上路,请多包涵

我正在使用 Apache POI API 生成 excel spreadsheet 输出一些数据。

我面临的问题是在创建和打开电子表格时,列不会展开,因此一些长文本(如日期格式的文本)乍一看不会显示出来。

我可以双击 excel 中的列边框以展开或拖动边框以调整列宽,但可能有 20 多列,我无法在每次打开电子表格时手动执行此操作:(

我发现(虽然可能是错误的方法) groupRow()setColumnGroupCollapsed() 可能可以解决问题,但运气不好。也许我以错误的方式使用它。

示例代码片段

        Workbook wb = new HSSFWorkbook();
        CreationHelper createHelper = wb.getCreationHelper();
        //create sheet
        Sheet sheet = wb.createSheet("masatoSheet");

        //not really working yet.... :(
        //set group for expand/collapse
        //sheet.groupRow(0, 10); //just random fromRow toRow argument values...
        //sheet.setColumnGroupCollapsed(0, true);

        //create row
        Row row = sheet.createRow((short)0);
        //put a cell in the row and store long text data
        row.createCell(0).setCellValue("Loooooooong text not to show up first");

创建此电子表格时,“Looooooong text not to show up first”字符串位于单元格中,但由于该列未展开,因此仅显示“Loooooooo”。

我如何配置它以便当我打开我的电子表格时,该列已经展开???

原文由 Meow 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 748
2 个回答

提示: 要使自动调整大小起作用,应在将数据填充到 excel 调用 sheet.autoSizeColumn(columnNumber)

在填充数据之前调用该方法将没有任何效果。

原文由 Unni Kris 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题