从java方法返回一个文件

时间:2017-02-15 05:49:45

标签: java apache-poi fileoutputstream filewriter filehandle

我创建了一个接受JSON响应并将数据导出到Excel和CSV文件的方法。我希望该方法接受文件名作为参数,并从方法返回File / FileHandle对象。

任何人都可以帮我这个吗?

我使用以下代码从 creteExcel createCSV 导出数据。

public void createExcel( PageModel pageModelRequest,PageModel pageModelResponse ){
        FileOutputStream outputStream=new FileOutputStream(new File("GridData.xlsx"));
        createGrid(pageModelResponse, sheet, workbook);
        workbook.write(outputStream);
        System.out.println("Excel Written");    
        outputStream.close();
        workbook.close();
}

public void createCSV(PageModel pageModelRequest,PageModel pageModelResponse){
        String csvFile = "/Users/abhinak4/Desktop/GridData.csv";        
        FileWriter writer = new FileWriter(csvFile);
        createGrid(pageModelRequest, pageModelResponse, writer);
}

在方法createGrid中,我正在为excel创建工作簿,并且我将数据附加到writer(writer.append)。

我想知道,我如何接受fileName作为createExcelcreateCSV方法的参数,并返回包含数据的同名文件?

2 个答案:

答案 0 :(得分:0)

我希望该方法接受文件名作为参数:您可以发送String,A File对象或InputStream - createExcel(PageModel req, PageModel resp, File yourFileObj)

从方法中返回File对象:签名变为:public File createExcel()

答案 1 :(得分:0)

使用这种方式,您就可以获得文件对象

   File file = new File(fileName);
   FileOutputStream outputStream = new FileOutputStream(file);
   workBook.write(outputStream);

我的详细解释答案被某人删除了,所以我在这里解释了