Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
调用poi java时的函数_Java_Excel_Apache Poi - Fatal编程技术网

调用poi java时的函数

调用poi java时的函数,java,excel,apache-poi,Java,Excel,Apache Poi,你好,我有一个问题,我有一个excel文件,我已经从这个文件中恢复了数据,然后我创建了一个函数来测试补丁是否存在于另一个工作表中,或者是否一切正常,直到。。。然后,如果补丁存在,我想在每个补丁之前显示“是”,否则显示“否”,但问题是,在创建输出文件时,即使补丁存在,它也会显示所有补丁“否” 代码如下: //Create Other rows and cells with data for (int i = 0; i < patches.size(); i++) { if (patc

你好,我有一个问题,我有一个excel文件,我已经从这个文件中恢复了数据,然后我创建了一个函数来测试补丁是否存在于另一个工作表中,或者是否一切正常,直到。。。然后,如果补丁存在,我想在每个补丁之前显示“是”,否则显示“否”,但问题是,在创建输出文件时,即使补丁存在,它也会显示所有补丁“否”

代码如下:

//Create Other rows and cells with data
for (int i = 0; i < patches.size(); i++) {
    if (patches.get(i).getOrigin_Environment().endsWith("MT22")) {
        Row roww = sheet_outputMT22.createRow(i+1);
        roww.createCell(0).setCellValue(patches.get(i).getVaFxNumber());
        roww.createCell(1).setCellValue(patches.get(i).getVaVersion());
        roww.createCell(2).setCellValue(patches.get(i).getVaPackage());
        roww.createCell(3).setCellValue(patches.get(i).getVaLevmat());
        roww.createCell(4).setCellValue(patches.get(i).getOrigin_Environment());
        roww.createCell(5).setCellValue(patches.get(i).getVaSrcCode());
        roww.createCell(6).setCellValue(patches.get(i).getInstalled());
    } else if (patches.get(i).getOrigin_Environment().endsWith("DV46")) {
        Row rowww = sheet_outputDV46.createRow(i+1);
        rowww.createCell(0).setCellValue(patches.get(i).getVaFxNumber());
        rowww.createCell(1).setCellValue(patches.get(i).getVaVersion());
        rowww.createCell(2).setCellValue(patches.get(i).getVaPackage());
        rowww.createCell(3).setCellValue(patches.get(i).getVaLevmat());
        rowww.createCell(4).setCellValue(patches.get(i).getOrigin_Environment());
        rowww.createCell(6).setCellValue(patches.get(i).getVaSrcCode());
    }
}

try {
    FileOutputStream fileOut = new FileOutputStream("heroes_output.xls");
    workbook_output.write(fileOut);
    fileOut.close();
    workbook_output.close();
    LOGGER.log(Level.INFO, "Output excel file generated successfuly");

} catch (Exception e) {
    // TODO: handle exception
    LOGGER.log(Level.SEVERE, e.getMessage());
}
}

public static void initializeOutputFile() {
    // Create outputWorkbook
    sheet_outputMT22 = workbook_output.createSheet("MT22");
    sheet_outputDV46 = workbook_output.createSheet("DV46");
    // create row
    Row headerRow = sheet_outputMT22.createRow(0);
    Row headerRoww = sheet_outputDV46.createRow(0);
    // Creating cells
    for (int i = 0; i < columns.length; i++) {
        Cell cell = headerRow.createCell(i);
        Cell cellDv46 = headerRoww.createCell(i);
        cellDv46.setCellValue(columns[i]);
        cell.setCellValue(columns[i]);
    }

    // Resize all columns to fit the content size
    for (int i = 0; i < columns.length; i++) {
        sheet_outputMT22.autoSizeColumn(i);
        sheet_outputDV46.autoSizeColumn(i);

    }
}
// Create RF80 List
public static List<String> createRF80List(Sheet envARF80_sheet){

    for (int rowNumberr = 2; rowNumberr <= envARF80_sheet.getLastRowNum(); rowNumberr++) {
        HSSFRow row1 = (HSSFRow) envARF80_sheet.getRow(rowNumberr);

        HSSFCell cell_NUMOD = row1.getCell(0);
        Cell cell_NUMODI = row1.getCell(0);
        if (cell_NUMODI == null) {
            cell_NUMODI = new StreamingCell(4, row1.getRowNum());
        }

        double number1 = cell_NUMODI.getNumericCellValue();
        String RF80CELL = new Double(number1).toString();
        listRF80.add(RF80CELL) ; 
    }

    return listRF80 ; 
}


//Create Patches List 
public static List<Patch> createPatches(Sheet validation_sheet) {
    String ins;
    for (int rowNumber = 2; rowNumber <= validation_sheet.getLastRowNum(); rowNumber++) {
        HSSFRow row = (HSSFRow) validation_sheet.getRow(rowNumber);

        HSSFCell cell = row.getCell(3);
        HSSFCell cell2 = row.getCell(4);
        HSSFCell cell3 = row.getCell(12);

        if (cell != null && cell2 != null) {
            // do something with the cell

            if (cell.getStringCellValue().endsWith("Y") && cell2.getStringCellValue().endsWith("MT22")  ) {

                HSSFCell cell_vafxnumber = row.getCell(0);
                HSSFCell cell_VaVersion = row.getCell(1);
                HSSFCell cell_VaPackage = row.getCell(2);
                HSSFCell cell_VaLevmat = row.getCell(3);

                Cell cell_VaSrcCode = row.getCell(12);
                if (cell_VaSrcCode == null) {
                    cell_VaSrcCode = new StreamingCell(12, row.getRowNum());

                }

                Cell cell_Origin_Environment = row.getCell(4);
                if (cell_Origin_Environment == null) {
                    cell_Origin_Environment = new StreamingCell(4, row.getRowNum());
                }

                double number = cell_vafxnumber.getNumericCellValue();
                String number_string = new Double(number).toString();
                String VaVersion = cell_VaVersion.getStringCellValue();
                String VaPackage = cell_VaPackage.getStringCellValue();
                String VaLevmat = cell_VaLevmat.getStringCellValue();
                String Origin_Environment = cell_Origin_Environment.getStringCellValue();
                String VaSrcCode = cell_VaSrcCode.getStringCellValue();
                String installed = verifExistingPatch(listRF80);


                Patch patchh = new Patch(number_string, VaPackage, VaVersion, VaLevmat, Origin_Environment, VaSrcCode , installed);
                patches.add(patchh);
            }
        }

    }
    return patches;
}


public static String verifExistingPatch(List<String> listRF80 ) {

    String exist = ""  ; 

    for(int i = 0 ; i<patches.size() ; i++) {
        for(int j =0 ; j<listRF80.size() ; j++)
            if(patches.get(i).getVaFxNumber().contains(listRF80.get(j)))  {
                exist = "Yes" ;
                System.out.println(patches.get(i).getVaFxNumber() + " Le patche est installes " + exist) ;
            }else if (!patches.get(i).getVaFxNumber().contains(listRF80.get(j))) {
                exist="No";
            }
    }
    return exist;
}
//使用数据创建其他行和单元格
对于(int i=0;i对于(int rowNumberr=2;rowNumberr)当您找到修补程序并将return设置为“Yes”时,是否可以在第二个“for”循环中尝试使用“return”命令,否则您将在下一次迭代中覆盖它..您能向我详细解释一下怎么做吗?超过.Detailsreturn exist;//将其放在代码底部的第7行相同的问题人:/listRF80包含getNumericCellValue(),而不是您从具有get fax number的修补程序中检查的内容..您能在第二个“for”内尝试使用“return”吗找到修补程序并将return设置为“Yes”时循环,否则将在下一次迭代中覆盖。.您能向我详细解释一下如何操作吗?超过。详细信息返回;//将其放在代码底部的第7行相同的问题人:/listRF80包含getNumericCellValue(),而不是您使用get fax number从修补程序中检查的内容。。