Excelのシートの2番目のタブにデータを追加すると、最初のタブデータは表示されません。 2番目のタブのコードを削除すると、最初のタブデータが表示されます。JavaでExcelにデータを書き込む最初のタブのデータが第2のタブを書き込んでいるときに表示されない
HSSFSheet sheet1 = wb.createSheet("A ");
HSSFSheet sheet2 = wb.createSheet("B");
HSSFFont headerFont = wb.createFont();
headerFont.setBoldweight(Font.BOLDWEIGHT_BOLD);
headerStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
headerStyle.setFillForegroundColor(HSSFColor.PALE_BLUE.index);
headerStyle.setFillBackgroundColor(HSSFColor.WHITE.index);
headerStyle.setFont(headerFont);
try
{
FileOutputStream fileOut = new FileOutputStream("C:\\Report.xls");
HSSFRow sessionname = sheet1.createRow(0);
HSSFCell title = sessionname.createCell(0);
title.setCellStyle(headerStyle);
title.setCellValue("Supported cipher Report");
HSSFRow row = sheet1.createRow(5);
HSSFCell cell0 = row.createCell(0);
cell0.setCellStyle(headerStyle);
cell0.setCellValue("One");
HSSFCell cell1 = row.createCell(1);
cell1.setCellStyle(headerStyle);
cell1.setCellValue("two");
HSSFCell cell2 = row.createCell(2);
cell2.setCellStyle(headerStyle);
cell2.setCellValue("three");
HSSFCell cell3 = row.createCell(3);
cell3.setCellStyle(headerStyle);
cell3.setCellValue("four");
HSSFCell cell4 = row.createCell(4);
cell4.setCellStyle(headerStyle);
cell4.setCellValue("five");
if (!list.isEmpty())
{
int rowNumber = 6;
for (Result s : supportedlist)
{
HSSFRow nextrow = sheet1.createRow(rowNumber);
nextrow.createCell(0).setCellValue(s.One());
nextrow.createCell(1).setCellValue(s.Two());
nextrow.createCell(2).setCellValue(s.Three());
nextrow.createCell(3).setCellValue(s.four());
nextrow.createCell(4).setCellValue(s.five());
rowNumber++;
}
}
sheet1.autoSizeColumn(0);
sheet1.autoSizeColumn(1);
sheet1.autoSizeColumn(2);
sheet1.autoSizeColumn(3);
sheet1.autoSizeColumn(4);
System.out.println("sheet1 writting");
wb.write(fileOut);
fileOut.flush();
fileOut.close();
私がシート2を通過し、残りのコードが上記と同じ場合。sheet1データが表示されている間、sheet1タブのデータは表示されません。
あなたは 'sheet2'に書き込むことはありません。誤って間違ったタブに書き込んだり、最初の文字を上書きしたりする可能性はありますか?あなたのコードをデバッグしましたか? – Thomas
私はまた、コードをデバッグします。私はデバッグ中に値をチェックしました。もし私がsheet2を渡す前に出力を参照してください。データはそこにあります。一度sheet2が渡されると、データは消滅します。お願いします。 FileOutputStreamに問題はありますか? FileOutputStreamを使用する場合はfileOut = new FileOutputStream( "C:\\ Report.xls"、true); - >すべての時間データが表示されます。 sheet2データは表示されません。 – sudhanshu