2015-05-21 60 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