java - 每周创建一个文件

标签 java

我有一个java程序,每天都会手动运行。 现在我想每周创建一个excel文件来写入本周的所有任务

我知道如何每天创建一个文件,如下所示:

if(!IoUtils.fileExist("indicators-" + IoUtils.getCurrentDate() + ".xls")){
    IoUtils.createIndicFile("indicators-" + IoUtils.getCurrentDate() + ".xls");
}
else IoUtils.INDIC_FILEPATH = "indicators-" + IoUtils.getCurrentDate() + ".xls";

这是一个以特定格式给出当前日期的函数:

// IoUtils class
public static String getCurrentDate(){
    LocalDateTime ldt = LocalDateTime.now();
    return DateTimeFormatter.ofPattern("dd-MM-yyyy", Locale.ENGLISH).format(ldt);
}

那么我怎样才能将其更改为每周只创建一个文件?

我还想在文件名中包含月份和周数,如下所示:

// first monday of january 2018
name = "indicators-week1-01-2018"

// second monday of january 2018
name = "indicators-week2-01-2018"

谢谢

最佳答案

Java 提供了java.util.concurrent.ScheduledThreadPoolExecutor,它可以额外安排命令在给定的延迟后运行,或定期执行。

Scheduler.scheduleWithFixedDelay(task, StartDelay, repeatInterval, TimeUnit.MINUTES);

关于java - 每周创建一个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53516297/

相关文章:

javascript - Ajax 总是在成功时刷新页面

java - 用于解析和转换 SWIFT MT 文件的库

java - 如何使用 FileReader 确保在 Java 中找到文件?

java - 静态方法继承和静态变量继承有何不同?

java - Android 中两个服务如何通信?

java - 如何读取 docx 中使用的所有字体大小

java - 我的代码有什么错误?尝试构建二维矩阵

java - 如何在非事件派发线程中间提示确认对话框

java - 在 Java 中同时获取和放置到 Map

java - Red5录音文件时长