作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试了很多解决方案,但它们都不适合我,因此,我想从你们那里得到一些帮助。
错误代码:
PS C:\Users\Sonic\Desktop\excel_reader_v.1_beta3-0> cd 'c:\Users\Sonic\Desktop\excel_reader_v.1_beta3-0'; & 'C:\Users\Sonic\.vscode\extensions\vscjava.vscode-java-debug-0.24.0\scripts\launcher.bat' 'C:\Users\Sonic\AppData\Local\Programs\AdoptOpenJDK\bin\java' '-Dfile.encoding=UTF-8'
'-cp' 'C:\Users\Sonic\AppData\Local\Temp\cp_8ljdlon05x6nh0xy6agu8fwea.jar' 'excel_reader.ExcelReader2d'
Exception in thread "main" java.io.IOException: While trying to invoke 'createWorkbook' on factory org.apache.poi.xssf.usermodel.XSSFWorkbookFactory and arguments [java.io.BufferedInputStream@452b3a41]
at org.apache.poi.ss.usermodel.WorkbookFactory.createWorkbook(WorkbookFactory.java:357)
at org.apache.poi.ss.usermodel.WorkbookFactory.createXSSFWorkbook(WorkbookFactory.java:316)
at org.apache.poi.ss.usermodel.WorkbookFactory.create(WorkbookFactory.java:234)
at org.apache.poi.ss.usermodel.WorkbookFactory.create(WorkbookFactory.java:200)
at excel_reader.ExcelReader2d.main(ExcelReader2d.java:28)
Caused by: java.lang.ClassNotFoundException: org.apache.poi.xssf.usermodel.XSSFWorkbookFactory
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
at org.apache.poi.ss.usermodel.WorkbookFactory.createWorkbook(WorkbookFactory.java:326)
... 4 more
我的代码:
package excel_reader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.DataFormatter;
import org.apache.poi.ss.usermodel.FormulaEvaluator;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
public class ExcelReader2d {
// methods void ExeScan()
public static void main(String [] args) throws FileNotFoundException, IOException {
String filePath = "C:\\Users\\Sonic\\Desktop\\ExcelReadingProject\\ExcelWorkbook.xlsx";
String toSearch = "coresystem";
int searchColumn = 7; // column H
List<Row> results = new ArrayList<Row>();
DataFormatter dataFormatter = new DataFormatter();
Workbook workbook = WorkbookFactory.create(new FileInputStream(filePath));
FormulaEvaluator formulaEvaluator = workbook.getCreationHelper().createFormulaEvaluator();
Sheet sheet = workbook.getSheetAt(0);
for (Row row : sheet) { // iterate over all rows in the sheet
Cell cellInSearchColumn = row.getCell(searchColumn); // get the cell in seach column (H)
if (cellInSearchColumn != null) { // if that cell is present
String cellValue = dataFormatter.formatCellValue(cellInSearchColumn, formulaEvaluator); // get string cell value
if (toSearch.equalsIgnoreCase(cellValue)) { // if cell value equals the searched value
results.add(row); // add that row to the results
}
}
}
// print the results
System.out.println("Found results:");
for (Row row : results) {
int rowNumber = row.getRowNum()+1;
System.out.print("Row " + rowNumber + ":\t");
for (Cell cell : row) {
String cellValue = dataFormatter.formatCellValue(cell, formulaEvaluator);
System.out.print(cellValue + "\t");
}
System.out.println();
}
workbook.close();
}
}
我尝试过什么:重新安装.jar
文件,确保依赖文件中的内容正确,检查我的代码(没有红线)。* PS。我对java只有4个月的经验,不知道依赖注入(inject)是如何工作的以及如何正确添加依赖文件(.pom.xml
),我观看的教程,他教我把一个pom.xml
文件并在线查找依赖代码( https://mvnrepository.com/artifact/org.apache.poi ),目前使用 Windows 10、vscode。 tkx。
最佳答案
向 pom.xml 添加以下依赖项:
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.15</version>
</dependency>
关于java - 尝试在工厂 org.apache.poi.xssf.usermodel.XSSFWorkbookFactory 和参数上调用 'createWorkbook' 时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59724477/
我尝试了很多解决方案,但它们都不适合我,因此,我想从你们那里得到一些帮助。 错误代码: PS C:\Users\Sonic\Desktop\excel_reader_v.1_beta3-0> cd '
我是一名优秀的程序员,十分优秀!