Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.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
Java 使用ApachePOI写入xlsx文件,在文件的最后一列中获得预期的答案_Java_Apache Poi - Fatal编程技术网

Java 使用ApachePOI写入xlsx文件,在文件的最后一列中获得预期的答案

Java 使用ApachePOI写入xlsx文件,在文件的最后一列中获得预期的答案,java,apache-poi,Java,Apache Poi,我正在学习如何使用ApachePOI编写xlsx文件,现在在下面的代码中我使用的是2数组。 1.第2个月2.0小时 我正在使用Month数组来分配第一行中的列名,这对我来说很好。现在,我希望代码日志中的另一个数组在每列中打印出来,但使用下面的代码无法得到预期的答案 有关预期的信息,请参阅屏幕:“预期的\u Xlsx” 有关实际值,请参阅屏幕:“实际值” 公共类编写\u xlsx{ 公共静态void main(字符串[]args)引发IOException{ 工作簿wb=新XSSFWorkbook

我正在学习如何使用ApachePOI编写xlsx文件,现在在下面的代码中我使用的是2数组。 1.第2个月2.0小时

我正在使用Month数组来分配第一行中的列名,这对我来说很好。现在,我希望代码日志中的另一个数组在每列中打印出来,但使用下面的代码无法得到预期的答案

有关预期的信息,请参阅屏幕:“预期的\u Xlsx” 有关实际值,请参阅屏幕:“实际值”

公共类编写\u xlsx{
公共静态void main(字符串[]args)引发IOException{
工作簿wb=新XSSFWorkbook();
sheet1=wb.createSheet(“SheetOne”);
字符串[]月={“一月”、“二月”、“三月”、“四月”};
int[]记录时间={7,5,9,10};
int f=0;
系统输出打印项次(月[0]);
行r=表1。创建行(f);

对于(int i=0;i您需要两个
for
循环(嵌套)来写入数据,例如:

for (int rn = 1; rn <= 4; rn++) {
    Row row = sheet1.createRow(rn);
    for (int i = 0; i < 4; i++) {
        row.createCell(i).setCellValue(Month[rn-1]);
    }
}

for(int rn=1;rn,这是另一个答案,我想在A:7,5,9,10列这样的列中打印日志记录小时数:A:7,7,7列,7@balvinderdhillon这与“预期答案”一致在您的问题中。请仔细查看它的不同之处…….我预期的代码在A列中给出o/p:7,5,9,10可以通过键入列值来完成吗?就像在A列中第一行一样,它可以完成。但是,由于POI可以很好地处理行,所以逻辑会有点复杂。此外,在您的代码中,只有一个for循环(我在回答中提到了这一点)这就是为什么它只印了一个专栏。
for (int rn = 1; rn <= 4; rn++) {
    Row row = sheet1.createRow(rn);
    for (int i = 0; i < 4; i++) {
        row.createCell(i).setCellValue(Month[rn-1]);
    }
}