如何在不同的动态Excel工作表中打印java输出

问题描述:

这里是我的代码。它将一个输入值的结果存储起来。 我正在计算x变量中的项数和y变量中的种子值。输入值来自一个excel文件。它工作正常,在输入值的另一个excel文件中显示结果。 但现在我想显示多个输入值的结果可以说5个术语和5个种子值。对于每个术语的数量,它将获取其对应的种子值,并在Excel表格中显示该系列,对于下一个值,它应该在相同的文件中显示结果,但是在下一张表格中... 另外,我将文件保存为当前日期n次。 ..like我每次运行时的名称,如果该文件将被罚款wrking当前日期n次!\ 唯一的问题是与在同一个文件如何在不同的动态Excel工作表中打印java输出

import java.io.File; 
import java.io.FileInputStream; 
import java.io.FileNotFoundException; 
import java.io.FileOutputStream; 
import java.io.IOException; 
import java.io.InputStream; 
import java.io.PrintStream; 
import java.util.Date; 
import java.text.DateFormat; 
import java.text.SimpleDateFormat; 
import java.util.Calendar; 
import java.util.Iterator; 

import org.apache.poi.xssf.usermodel.XSSFCell; 
import org.apache.poi.xssf.usermodel.XSSFRow; 
import org.apache.poi.xssf.usermodel.XSSFSheet; 
import org.apache.poi.xssf.usermodel.XSSFWorkbook; 

public class ReadFromXLSX { 
    static float n1 = 0; 
    static float x; 
    static float y; 

    static void fbc(float x) throws FileNotFoundException { 
     { 
      float n3; 
      if (x > 0) { 
       n3 = n1 + y; 
       System.out.print(n3); 
       System.out.println(); 
       n1 = y; 
       y = n3; 
       fbc(x - 1); 
      } 
     } 
    } 

    public static void readXLSXFile() throws IOException { 
     InputStream ExcelFileToRead = new 
       FileInputStream("C://temp/excelfile.xlsx"); 
     XSSFWorkbook wb = new XSSFWorkbook(ExcelFileToRead); 
     XSSFWorkbook test = new XSSFWorkbook(); 
     XSSFSheet sheet = wb.getSheetAt(0); 
     XSSFRow row; 
     XSSFCell cell; 
     Iterator rows = sheet.rowIterator(); 
     while (rows.hasNext()) { 
      row = (XSSFRow) rows.next(); 
      Iterator cells = row.cellIterator(); 
      while (cells.hasNext()) { 
       cell = (XSSFCell) cells.next(); 
       if (cell.getCellType() == XSSFCell.CELL_TYPE_STRING) { 
        x = Float.parseFloat(" " + 
          wb.getSheetAt(0).getRow(1).getCell(0) + " "); 
        y = Float.parseFloat(" " + 
          wb.getSheetAt(0).getRow(1).getCell(1) + " "); 
        DateFormat dateFormat = new SimpleDateFormat("MM_dd_yy-- 
          HH_mm_ss"); 
          Date today = Calendar.getInstance().getTime(); 
        String date = dateFormat.format(today); 
        PrintStream printStream = new PrintStream(new 
          FileOutputStream(new File("C:\\temp\\" + date + ".xls"))); 
        System.setOut(printStream); 
        System.out.println("The fibonacci series is as 
          follows:-"); 
        fbc(x); 

        break; 
       } 
      } 
      break; 
     } 
    } 

    public static void main(String[] args) throws 
      IOException { 

     System.out.println("Program executed 
       successfully !!"); 
     readXLSXFile(); 
    } 
} 
+1

向我们展示迄今为止所做的工作。 –

+0

@LakmalVithanage我已经使用代码编辑了我的帖子。任何帮助,将不胜感激 – Gagan

的不同表多个输入值的打印结果在同一文件的不同页面上打印多个输入值的结果,请尝试以下方法 为您的excel文件中的每个页面写入页面名称。 假设例如表名称为“TESTDATA”,

XSSFWorkbook workbook = new XSSFWorkbook(file); 
XSSFSheet sheet = workbook.getSheet("testData"); //Get worksheet of excel file 

所以,得到同样的文件&写输出的所有那些对应不同的表名。

+0

谢谢,其完成 – Gagan