ApachePOI-JAVA-在excel中迭代列

ApachePOI-JAVA-在excel中迭代列,java,excel,iteration,apache-poi,cell,Java,Excel,Iteration,Apache Poi,Cell,这里是java新手。我正在编写一个代码,该代码读取excel文件(查看列中的单元格),然后编写如下表所示的内容: 我有一个excel文件,如下所示: col1 col2 col3 col4 ----------------------------- row1 | 2,3,1 _ 1 w row2 | 3,2,7 _ 2 x row3 | _ _ 3 y r

这里是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
      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
我在第2列中写了一些值(使用XLWT),如下所示:

      col1     col2    col3    col4
      -----------------------------
row1 | 2,3,1    _        1      w
row2 | 3,2,7    _        2      x
row3 |   _      _        3      y
row4 |  4,9     _        4      z
      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文件的唯一方法

相关页面:

import org.apache.poi.ss.usermodel.*;
导入org.apache.poi.xssf.usermodel.*;
公共类Python{
公共静态void main(字符串[]args){
试一试{
FileInputStream文件=新的FileInputStream(新文件(“C:\\Users\\…\\BioCes25s.xlsx”);
XSSF工作簿=新XSSF工作簿(文件);
XSSFSheet工作表=工作簿。getSheetAt(0);
对于(int i=0;i<9999;i++){
XSSFRow row=工作表.getRow(i);
if(行==null){
//对行进行迭代
}
对于(int j=0;j<30;j++){
XSSFCell cell=row.getCell(j);
if(单元格==null){
//在单元格上迭代
主要是寻找一种迭代列值的方法。我浏览了文档:


但我只能找到处理行和单元格的代码,而不能找到列。不过我想遍历列。是否有任何代码可以处理此问题?

只需遍历行并获取所需的单元格:

int columnIndex = 3;
for (int rowIndex = 0; rowIndex<3; rowIndex++){
    Row row = CellUtil.getRow(rowIndex, sheet);
    Cell cell = CellUtil.getCell(row, columnIndex);
}
int columnIndex=3;
对于(int rowIndex=0;rowIndex)请在此处检查此源代码: