gpt4 book ai didi

java - 如何使用 apache POI 和 java 比较 2 个不同的 excel.xls 工作表

转载 作者:太空宇宙 更新时间:2023-11-04 06:21:11 26 4
gpt4 key购买 nike

问题陈述:我想从两个不同的网站获取数据,并将这些数据写入工作簿工作表 1 和工作表 2 我正在寻找执行 Excel 比较的解决方案,寻求专家指导。

==========================================================

Excel 工作表数据

Excel sheet data

======================================

解决方案我需要使用 Apache POI 和 java 使这两张表不匹配。

======================================================下面是读取sheet 0的代码,我坚持用锄头读取第二个sheet1并进行比较。

导入java.io.FileInputStream;

导入jxl.Sheet;导入jxl.Workbook;

公共(public)类 MyCCD {

public static void oldTurnover() throws Exception{

//int turnoverRow = 0;
String TickerName = null;
int numOfTicker = 8;
String SummaryColumn = null;
float oldRevenue = 0;
String description = "Ticker";

Workbook wb = Workbook.getWorkbook(new FileInputStream("D:\\ssb.xls"));
Sheet sh = wb.getSheet(0);

int rows = sh.getRows();
int cols = sh.getColumns();

//to get the row of Ticker
for(int i=0;i<rows;i++){
//System.out.println(sh.getCell(0, i).getContents().toLowerCase());
if(sh.getCell(0, i).getContents().toLowerCase().matches("ticker")){
System.out.println("Ticker row:"+i);
//turnoverRow = i;

//Company Name
for(int j=i;j<i+numOfTicker;j++){
TickerName = sh.getCell(0, j+1).getContents();
System.out.println("-----------"+TickerName+"-------------");

for(int k=1;k<cols;k++){

//quarter
SummaryColumn = sh.getCell(k, i+1).getContents();
System.out.println("SummaryColumn: "+SummaryColumn);


//Estimated Revenue
oldRevenue = Float.parseFloat(sh.getCell(k, j+1).getContents());


float newRevenue = IHData(description, SummaryColumn);


if(oldRevenue != newRevenue){
System.out.println("SummaryColumn:"+SummaryColumn);
System.out.print ("SheetOne:"+oldRevenue);
System.out.print ("\t\t");
System.out.println("SheetTwo: "+newRevenue);
}
}
}
}
}
}

public static float IHData(String description, String SummaryColumn) throws Exception
{

最佳答案

读取工作表数据并比较值。

首先您需要阅读两页。

InputStream book1= new FileInputStream("book1.xlsx"));
XSSFWorkbook wb = new HSSFWorkbook(book1);

XSSFSheet sheet1 = myWorkBook.getSheetAt(0) // first sheet
Row row = sheet1.getRow(0); // first row
Cell cell = row.getCell(0);
String value = cell.getStringCellValue();// use a loop to read all the cells in the rows.

读取单元格内容并将它们放入 String 或 int 任何类型中,并对 book2 执行相同的操作。现在比较保存两张表中数据的变量。另请阅读此tutorial如果您需要更多引用

关于java - 如何使用 apache POI 和 java 比较 2 个不同的 excel.xls 工作表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27401694/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com