在操作Excel工作表时,我们在某个单元格中输入文字过多,超出单元格宽度,此时如果不手动设置换行的话,则会占据其他相邻单元格的位置。相信大家都会觉得手动换行很麻烦,要是能够自动设置就省事不少。这篇文章就将介绍如何利用Java代码对Excel单元格进行自动换行设置,同时也会讲解取消自动换行的方法。
JAR包导入
首先我们需要借助到一款名为 Free Spire.XLS for Java 的免费控件,其产品包可在 E-iceblue中文官网 上获取,解压后找到lib文件夹下的Spire.Xls.jar,然后将其手动导入Java项目;或者是在Java项目中创建Maven仓库,然后在pom.xml文件下键入以下代码进行Jar包导入。
<repositories>
<repository>
<id>com.e-iceblue</id>
<url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId> e-iceblue </groupId>
<artifactId>spire.xls.free</artifactId>
<version>5.1.0</version>
</dependency>
</dependencies>
代码示例
Free Spire.XLS for Java支持获取某个Excel工作表的指定单元格并为其文字设置自动换行和取消换行。以下是详细操作步骤:
- 创建Workbook实例;
- 调用Workbook.loadFromFile()方法加载Excel示例文档;
- 调用Workbook.getWorksheets().get()方法获取第一张工作表;
- 调用Worksheet.getRange().get()方法获取某个单元格,然后使用XlsRange.getStyle().setWrapText()方法设置文字自动换行和取消自动换行;
- 调用Workbook.saveToFile()方法保存结果文档。
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class WrapOrUnwrapText {
public static void main(String[] args) {
//创建Workbook实例
Workbook workbook = new Workbook();
//加载Excel文档
workbook.loadFromFile("C:\Users\Tina\Desktop\sample.xlsx");
//获取第一张工作表
Worksheet sheet = workbook.getWorksheets().get(0);
//设置单元格"A1"的文字自动换行
sheet.getRange().get("A1").getStyle().setWrapText(true);
//取消单元格"A6"的文字自动换行
sheet.getRange().get("A6").getStyle().setWrapText(false);
//保存文档
workbook.saveToFile("output/WrapOrUnwrapText.xlsx", ExcelVersion.Version2013);
}
}