如何适应细胞大小

我试图build立一个与Apache的excell文件。 (HSSFWorkbook)

我不知道如何设置列宽度大小。

看下面的例子:

在这里输入图像说明

第一列(A)的值是:“行号”,我们不能看到整个string。 列(D)和(E)有同样的问题,但如果我们双击它,我们可以看到完整的string。

我想创build用户不需要双击它的单元格。 我该怎么做 ?

你可以使用autoSizecolumn() ,它会根据标题设置列的大小。

 sheet.autoSizeColumn(0)// to adjust first column 

请参考这个链接 。 这将有帮助…

要设置所有可用的列,请使用for循环

 for(int colNum = 0; colNum<row.getLastCellNum();colNum++) workbook.getSheetAt(0).autoSizeColumn(colNum); 

尝试在HSSFSheet对象上使用setColumnWidth()方法

 sheet.setColumnWidth(0, 1000); 

这需要比使用autoSizeColumn()更多的代码,但是我发现在较新版本的Excel(2013)中打开生成的文件时,可以忽略autoSizeColumn()。

Autofit也将工作

(来自帮助文件)
此示例更改Sheet1上列A到I的宽度以实现最佳匹配。

 Worksheets("Sheet1").Columns("A:I").AutoFit 

此示例仅基于单元格A1:E1的内容更改Sheet1上的列A到E的宽度以实现最佳匹配。

 Worksheets("Sheet1").Range("A1:E1").Columns.AutoFit 

从文档 :

 Sheet sheet = workbook.getSheetAt(0); sheet.autoSizeColumn(0); //adjust width of the first column sheet.autoSizeColumn(1); //adjust width of the second column