2015-05-21 97 views
0

我創建了一個代碼,它可以正常工作,但是我希望程序生成一個.txt文件並將結果保存起來以備後用。但是我希望程序每次執行時都創建不同的文件,因爲我計劃每月使用一次(它用於每月的利潤計算)並使用年份和月份數來保存文件的名稱。java.io.File自定義文件名

例如:

File file = new File("C:\...\YearMonth.txt"); 

當然,年份和月份將取決於int Yearint Month變量在程序事先通知,但。

任何想法?希望我很清楚。

回答

1

你應該創建一個文件meta_data存儲以前的文件

這樣的信息,當你創建一個新的文件,你將要閱讀meta_data文件生成新的文件名

希望這可以幫助你

+0

這是個好主意,謝謝! –

1

是你想要嗎?

Calendar c = Calendar.getInstance(); 
    int year  = c.get(Calendar.YEAR); 
    int month  = (c.get(Calendar.MONTH) + 1); 

    String fileName = "profit_"+ month + "_" + year + ".txt"; 

    File file = new File("C:...\\" + fileName); 
1

我相信你正在使用一個獨立的java程序。 當你想記錄在控制檯中打印的結果使用下面的方式

Calendar c = Calendar.getInstance(); 
    int year  = c.get(Calendar.YEAR); 
    int month  = (c.get(Calendar.MONTH) + 1); 
    String fileName = "Log_"+year"_"+month+".txt" 
    File file = new File (fileName);  
    FileOutputStream fos = new FileOutputStream(file); 
     ps = new PrintStream(fos); 
     System.setOut(ps); // This will write all the console log to a file. 
//when exiting the program or before termination Flush the PrintStream 
+0

這就是我認爲我應該做的,但我不確定這是否會奏效!我可以像這樣寫... File file = new File(「C:\ ... \」+ fileName);使用你上面寫的代碼? –

+0

是的你可以更好地配置文件位置。 – Babel