2017-02-15 8 views
0

JSONレスポンスを受け取り、データをExcelおよびCSVファイルにエクスポートするメソッドを作成しました。メソッドがファイル名をパラメータとして受け入れ、メソッドからFile/FileHandleオブジェクトを返すようにします。Javaメソッドからファイルを返す

誰もがこれについて私を助けることができますか?

私はcreteExcelcreateCSVからデータをエクスポートするためのコードの下に使用しています。方法createGridにおいて

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); 
} 

、Iは、Excelのブックを作成しています、そしてIはwriter(writer.append)に、データを追加しています。

私が知りたいのは、createExcelcreateCSVメソッドのパラメータとしてfileNameを受け入れ、データを含む同じ名前のファイルを返すにはどうすればいいですか?

+2

メソッドのシグネチャ(戻り値の型とパラメータ)を変更できませんか? – anacron

+0

[どちらが良いですか?]ファイル名を取るメソッドのパラメータタイプとしてStringまたはFileを使用する可能性のある複製(http://stackoverflow.com/questions/17142469/which-is-better-using-string-or-file-as) -parameter-type-for-methods-that-take-f) – liorsolomon

+0

** Excelの場合:fileNameをStringパラメータとして送信できますが、FileOutputStreamを使用してデータを書き込みます。だから、私はこのメソッドの直後にFileOutputStreamを返すことができますか、それをFileオブジェクトに変換する必要があります。私は変換する必要がある場合、どのように? ** CSV **の場合:fileWriterを使用してデータを書き込みます。私は直接fileWriterを返すことができますか、それをファイルオブジェクトに変換する必要がありますか?もしそうなら、我々はそれをどのように変換するのですか? –

答えて

1

私はメソッドは、パラメータとしてファイル名を受け入れるようにしたい:あなたがStringFileオブジェクトまたはInputStream送ることができます - createExcel(PageModel req, PageModel resp, File yourFileObj)

をそして方法からFileオブジェクトを返す:シグネチャは次のようになります。public File createExcel()

+0

** Excelの場合**:fileNameをStringパラメータとして送信したいが、FileOutputStreamを使用してデータを書き込む。だから、私はこのメソッドの直後にFileOutputStreamを返すことができますか、それをFileオブジェクトに変換する必要があります。私は変換する必要がある場合、どのように? ** CSV **の場合:fileWriterを使用してデータを書き込みます。私は直接fileWriterを返すことができますか、それをファイルオブジェクトに変換する必要がありますか?もしそうなら、我々はそれをどのように変換するのですか? –

関連する問題