gpt4 book ai didi

Java POI - 将行作为列插入

转载 作者:行者123 更新时间:2023-12-02 03:03:15 24 4
gpt4 key购买 nike

我基本上是从数据库中获取行并将它们作为行粘贴到我的 Excel 文件中。这很简单,因为没有任何数据转换。这是我的代码(其中最重要的部分):

XSSFSheet chart1_sheet = wb.createSheet("Chart1");

String strss_chart[] = {"dataa", "inn", "closed", "application"};

hed_row = chart1_sheet.createRow(0);
for_each_header(hed_row, strss_chart);

sql = "select dataa, inn, closed, application from Chart1";
statement = conn.prepareStatement(sql);
resultSet = statement.executeQuery();

row = 1;
while(resultSet.next())
{
Row dataRow = chart1_sheet.createRow(row);
for_each_row_func(dataRow, resultSet, strss_chart);
row = row + 1;
}

还有我的两个功能:

public static void for_each_row_func(Row dataRow, ResultSet resultSet, String [] strs) throws Exception
{
int i = 0;
for(String str : strs)
{
dataRow.createCell(i).setCellValue(resultSet.getString(str));
i += 1;
}
}


public static void for_each_header(Row dataRow, String [] strs) throws Exception
{
int i = 0;
for(String str : strs)
{
//dataRow.createCell(i).setCellValue(resultSet.getString(str));
dataRow.createCell(i).setCellValue(str);
i += 1;
}
}

我的最终目标是根据这些数据创建图表,但要做到这一点,我需要的数据如下:

Column1 Column2 Column3
Data1 Data2 Data3
Data4 Data5 Data6

但是像这样:

Column1 Data1 Data4
Column2 Data2 Data5
Column3 Data3 Data6

在Java Poi中有什么办法可以做到这一点吗?

最佳答案

我记得在 POI 中,您需要创建第一行,而不是作为单元格的列。所以 - 在你的情况下,你需要创建 3 行实例

Row row1 = chart1_sheet.createRow(1);
Row row2 = chart1_sheet.createRow(2);
Row row3 = chart1_sheet.createRow(3);

比填充标题

row1.createCell(1).setCellValue(str[0]);
row2.createCell(1).setCellValue(str[1]);
row3.createCell(1).setCellValue(str[2]);

然后进行n次迭代填充数据

rownum = 2;
while(resultSet.next())
{
row1.createCell(rownum).setCellValue(resultSet.getString(1));
row2.createCell(rownum).setCellValue(resultSet.getString(2));
row3.createCell(rownum).setCellValue(resultSet.getString(3));
rownum++;
}

您可以将所有行放入集合中附:抱歉,我的电脑上没有任何 Java IDE - 可能存在一些语法错误。尝试描述算法

关于Java POI - 将行作为列插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42155286/

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