这里是java新手。我正在编写一个代码,该代码读取 Excel 文件(查看列中的单元格),然后编写如下表所示的内容:
我有一个 Excel 文件,如下所示:
col1 col2 col3 col4
-----------------------------
row1 | 2,3,1 _ 1 w
row2 | 3,2,7 _ 2 x
row3 | _ _ 3 y
row4 | 4,9 _ 4 z
我在第 2 列中写入一些值(使用 XLWT),如下所示:
col1 col2 col3 col4
-----------------------------
row1 | 2,3,1 x,y,w 1 w
row2 | 3,2,7 y,x 2 x
row3 | _ _ 3 y
row4 | 4,9 z 4 z
本质上,正在比较第 3 列和第 1 列,如果单元格 (1,1) 具有与第 3 列匹配的值,则第 4 列的值(对应于第 3 列)将写入第 2 列。
实际上,我已经在 Python 中完成了此操作,并且考虑使用 Jython,但是,我找不到任何有关将 python 模块导入 Jython 代码的文档。我相信 XSSF apache-poi 是我在 java 中处理 xlsx 文件的唯一方法。
相关页面:如何在java中进行Excel单元格迭代 https://stackoverflow.com/questions/16215750/how-to-do-cell-iteration-of-excel-in-java
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.*;
public class Python {
public static void main(String[] args) {
try {
FileInputStream file = new FileInputStream(new File("C:\\Users\\...\\Bioactives25s.xlsx"));
XSSFWorkbook workbook = new XSSFWorkbook(file);
XSSFSheet worksheet = workbook.getSheetAt(0);
for (int i = 0; i < 9999; i++) {
XSSFRow row = worksheet.getRow(i);
if(row == null) {
//iterates over rows
}
for (int j = 0; j < 30; j++) {
XSSFCell cell = row.getCell(j);
if(cell == null) {
//iterates over cells
主要是寻找一种迭代列值的方法。我查看了文档:http://poi.apache.org/spreadsheet/quick-guide.html#Iterator http://poi.apache.org/spreadsheet/quick-guide.html#Iterator
但我只能找到处理行和单元格的代码,而不是处理列的代码。不过,我想遍历这些列。有没有代码可以处理这个问题?