如何解决java中的工作簿以在xlsx文件中查找工作表中以“$”开头的所有单词
我正在处理一个 Excel 工作表,其中有多个列,其中包含多个文本值,包括以 $
开头的变量。我正在使用工作簿编写 Java 代码来读取 xlsx 文件。由于我以前从未使用过它,有人可以告诉我如何使用它来完成这项任务。
我的代码结构在这里:
package com.demo.ExcelProject;
import java.io.File;
import org.apache.poi.sl.usermodel.Sheet;
import org.apache.poi.ss.usermodel.CellRange;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTWorksheet;
public class CreateResult {
public static void main(String[] args) {
try {
//Create a workbook
Workbook workbook = WorkbookFactory.create(new File("template.xlsx"));
//Get the first worksheet
CTWorksheet worksheet = (CTWorksheet) workbook.getSheetAt(0);
//Find the text string "$"
//Save the document to file
workbook.savetoFile("output.xlsx");
}
catch(Exception e) {
e.printstacktrace();
}
}
}
一些更亲的人,请指导我。
解决方法
好吧,您将需要迭代器来迭代 Row(这也需要 .next() )和迭代器来迭代单元格。当您迭代单元格时,您会使用 .next() 获得下一个单元格,它应该看起来像这样
Iterator<Row> iterator = inputSheet.iterator();
while (iterator.hasNext()){
Row nextRow = iterator.next();
Iterator<Cell> cellIterator = nextRow.cellIterator();
//iterator() or cellIterator() both ok
while (cellIterator.hasNext()){
Cell cell = cellIterator.next();
String cellVal = cell.getStringCellValue();
if (cellVal.startsWith("$")){
//do something
}
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。