java 在操作 excel 的时候,如何使自适应列宽

本贴最后更新于 650 天前,其中的信息可能已经时移世异

这边以 hutool 的操作为例

1、首先用 hutool 的工具包构建 excel 操作对象,并获得 sheet 和列数
ExcelWriter writer = ExcelUtil.getWriter();
Sheet sheet = writer.getSheet();
int columnCount = writer.getColumnCount();
2、下面是自适应列宽的方法,上面得到的两个参数传入就好
/**
   * 自动调整列宽
   *
   * @param sheet
   * @param columnNumber
   */
  private static void autoSizeColumns(Sheet sheet,int columnNumber) {
    for (int i = 0; i < columnNumber; i++) {
      int orgWidth = sheet.getColumnWidth(i);
      sheet.autoSizeColumn(i, true);
      int newWidth = (int) (sheet.getColumnWidth(i) + 100);
      int maxWith = 256 * 255;
      // 限制下最大宽度
      if (newWidth > maxWith) {
        sheet.setColumnWidth(i, maxWith);
      } else {
        sheet.setColumnWidth(i, Math.max(newWidth, orgWidth));
      }
    }
  }
  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3187 引用 • 8213 回帖
  • Excel
    30 引用 • 28 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...