使用POI读取Java中的Excel文件-迭代器错误

使用POI读取Java中的Excel文件-迭代器错误,java,apache-poi,Java,Apache Poi,我需要比较两个excel文件。 我正在使用POI API。 我想查看第一个excel文件,从每行的第一个单元格中获取行id,然后查看第二个excel文件,找到行id为的行,并比较两个文件的单元格值 我现在的问题是,当我定义迭代器(行和单元格)时,我得到一个错误消息 我试过两种方法: 迭代器file1Row=file1Sheet.row迭代器(); 和 迭代器file1Row=file1Sheet.row迭代器() 这两种情况都是不可接受的 请有人试着给我一些建议;我在工作,什么能解决它 看看下面

我需要比较两个excel文件。 我正在使用POI API。 我想查看第一个excel文件,从每行的第一个单元格中获取行id,然后查看第二个excel文件,找到行id为的行,并比较两个文件的单元格值

我现在的问题是,当我定义迭代器(行和单元格)时,我得到一个错误消息

我试过两种方法: 迭代器file1Row=file1Sheet.row迭代器(); 和 迭代器file1Row=file1Sheet.row迭代器()

这两种情况都是不可接受的

请有人试着给我一些建议;我在工作,什么能解决它

看看下面我一直在写的代码

谢谢

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.FileNotFoundException;
import java.io.InputStreamReader;
import java.io.FileOutputStream;
import java.io.InputStream; 
import java.io.DataInputStream;
import java.io.InputStream.*;
import java.util.*;

import org.apache.poi.hssf.usermodel.*; 
import org.apache.poi.hssf.usermodel.HSSFRow;

import org.apache.poi.poifs.filesystem.POIFSFileSystem;


 public class CompareRanks {
public static void main(String[] args) throws IOException {
String file1Path = "C:/Documents/File1.csv";    
     String file2Path  = "C:/Documents/File2.xls";
//Read file1
try{

    FileInputStream File1 = new FileInputStream(file1Path );
    POIFSFileSystem File1System = new POIFSFileSystem (File1);

    HSSFWorkbook File1Workbook = new HSSFWorkbook(File1System);
    HSSFSheet File1RankSheet = File1Workbook.getSheetAt(0);
    Iterator File1Row = File1RankSheet .rowIterator(); //Error

     } catch (FileNotFoundException ex) {
        ex.printStackTrace();

     } finally {
     //Close the ObjectInputStream

 }  

}

您到底遇到了什么错误?您是否测试过名为File1RankSheet的HSSFSheet的值不为空?如果它为null,您可能会在下一行得到一个NullPointerException?我想知道我认为POI不能处理CSV,所以它应该在第
FileInputStream File1=new FileInputStream(file1Path)行中抛出错误