Excel电子表格是储存和处理数据的不二选择。当数据内容过多时,我们可以通过一些快捷工具来进行操作。“查找和替换”就是其中之一,比起手动搜索和更新数据,这个功能能帮助我们在大型电子表格中快速获取目标数据,并更改为新数据。Microsoft办公软件已提供了该功能,这里就不再赘述。今天想为大家分享的是如何通过代码来查找和替换数据(以Java代码为例)。使用到的是Free Spire.XLS for Java组件。示例代码和操作效果请参考以下内容。
程序环境
IntelliJ IDEA 2018 (jdk 1.8.0) 在进行操作之前先导入JAR包,请参考以下两种导入方式: 方法一:如果您使用的是 maven,先创建maven项目。然后通过添加以下代码来配置pom.xml 文件,再点击Import Changes将 JAR文件导入到应用程序中。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.cn/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.xls.free</artifactId>
<version>5.1.0</version>
</dependency>
</dependencies>
方法二:如果您没有使用 maven,则可以从此链接下载Free Spire.XLS for Java,找到lib文件夹下的Spire.XLS.jar并进行解压;然后在IDEA中创建一个新项目,依次点击“文件”(File),“项目结构”(Project Structure),“组件”(Modules),“依赖项”(Dependencies),再点击右方绿色“+”下的第一个选项“JAR文件或路径”(JARs or Directories),找到解压后的Spire.XLS.jar 文件,点击确认,将其导入到项目中。
代码解释:
首先创建一个Workbook实例,再使用Workbook.loadFromFile方法来加载一个示例文档。调用Workbook.getWorksheets().get()方法来获取指定工作表。Worksheet.findAllString()和CellRange.setText方法分别支持查找和替换指定文档。最后再通过Workbook.saveToFile()方法保存结果文档。
示例代码:
import com.spire.xls.CellRange;
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class ReplaceData {
public static void main(String[] args){
//创建Workbook实例
Workbook workbook = new Workbook();
//加载Excel示例文档
workbook.loadFromFile("sample.xlsx");
//获取第一个工作表
Worksheet worksheet = workbook.getWorksheets().get(0);
//在工作表中查找指定的文字
CellRange[] ranges = worksheet.findAllString("一般", true, true);
for (CellRange range : ranges)
{
//替换为新文字
range.setText("普通");
}
//保存结果文档
workbook.saveToFile("ReplaceData.xlsx", ExcelVersion.Version2013);
}
}