当前位置: 首页 > 面试题库 >

比较2个Excel文件的内容

谷弘致
2023-03-14
问题内容

我有2个excel文件,我想比较内容并突出显示差异。例如:

第一个档案…

name|age
abc|123
def|456
second file...
name|age
abc|123
def|456
ghi|789 - this being the differece

有没有第三方图书馆可以做到这一点?或最好的方法是什么?


问题答案:

就像DaDaDom所说的那样,Apache
POI是您想要的。您可以从此页面下载它。请注意,POI项目不是完全独立的,您可能需要下载一些额外的库。请遵循Apache
POI网站上的说明。这是您的用法:

InputStream myxls = new FileInputStream("workbook.xls"));
HSSFWorkbook wb = new HSSFWorkbook(myxls); // for *.xlsx use XSSFWorkbook

如果这是一个新文件,则可能需要先创建图纸才能继续,但是在这种情况下,文件已经创建。

HSSFSheet sheet = wb.getSheetAt(0);       // first sheet
HSSFRow row     = sheet.getRow(0);        // first row
HSSFCell cell   = row.getCell((short)0);  // first cell

要从单元中获取价值,请使用:

String value = cell.getStringCellValue();

但是,如果存储在单元格中的类型为数字,则会出现错误。如果使用数字:

Int value = cell.getCellValue();

这是我编写的用于处理不同单元格数据类型的方法:

public String getValue(int x, int y){
    Row row = this.activeSheet.getRow(y);
    if(row==null) return "";
    Cell cell = row.getCell(x);
    if(cell==null) return "";
    int type = cell.getCellType();
    switch(type){
    case 0:
        return cell.getNumericCellValue() + "";
    case 1:
        return cell.getStringCellValue();
    case 2:
        return cell.getCellFormula();
    case 3:
        return "";
    case 4:
        return cell.getBooleanCellValue() + "";
    case 5:
        return cell.getErrorCellValue() + "";
    default:
        return "";
    }
}

我希望对Apache POI的快速介绍对您的项目有帮助:)



 类似资料:
  • 问题内容: 我有两个文件,如下所示: 和 我需要比较所有单元格,以及从该单元格中比较一个单元格 。 如何添加的比较电池和? 问题答案: 以下方法应该可以帮助您入门: 这将显示两个文件之间不同的所有单元格。对于给定的两个文件,将显示: 如果您更喜欢单元格名称,请使用: 给你:

  • 本文向大家介绍python比较2个xml内容的方法,包括了python比较2个xml内容的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python比较2个xml内容的方法。分享给大家供大家参考。具体分析如下: 调用: 希望本文所述对大家的Python程序设计有所帮助。

  • 问题内容: 我正在为生成Excel文件(二进制文件)的某些代码编写JUnit测试。我还有另一个包含预期输出的Excel文件。将实际文件与预期文件进行比较的最简单方法是什么? 当然,我可以自己编写代码,但是我想知道在受信任的第三方库(例如Spring或Apache Commons)中是否已有这样做的方法。 问题答案: 这就是我最终要做的(由DBUnit完成繁重的工作): 这将比较两个文件中的数据,没

  • 问题内容: 您如何建议完成此任务? 我所面临的挑战是智能呈现差异信息。在我重新发明轮子之前,是否有一种公认的方法来处理这种比较? 问题答案: 您可以尝试XStream的体系结构,处理JSON映射 另外,请看一下这篇文章:比较两个XML文件并在C#中使用XMLDiff生成第三个文件。它在C#中,但是逻辑是相同的。

  • 我在Visual Studio中看到了新的比较工具 有没有一种方法,我可以只是比较两个文件与内置的功能在Visual

  • 问题内容: 是否有任何方法可以接收2个JSON对象并将其进行比较以查看是否有任何数据已更改? 编辑 在审查评论之后,需要进行一些澄清。 JSON对象定义为 “一组无序的名称/值对。一个对象以{(左括号)开始,以}(右括号)结束。每个名称后面都带有:(冒号),名称/值对之间以,(逗号)分隔。 ”。- json.org 我的目标是能够简单地比较2个JSON对象文字。 我不是javascript专家,所