编写程序,使用properties类程序运行时输出上次程序运行的开始时间和结束时间,然后用户按任意键退出程序
时间: 2024-02-16 15:02:46 浏览: 64
约时间微信小程序源码数据库.zip
好的,这是一个Java代码示例,使用Properties类记录程序的开始时间和结束时间:
```java
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Date;
import java.util.Properties;
import java.util.Scanner;
public class Program {
private static final String PROPERTIES_FILE_NAME = "program.properties";
private static final String START_TIME_KEY = "start_time";
private static final String END_TIME_KEY = "end_time";
public static void main(String[] args) throws IOException {
Properties properties = loadProperties();
// 获取上次程序运行的开始时间
String startTimeString = properties.getProperty(START_TIME_KEY);
Date startTime = startTimeString != null ? new Date(Long.parseLong(startTimeString)) : null;
// 记录本次程序运行的开始时间
Date now = new Date();
properties.setProperty(START_TIME_KEY, String.valueOf(now.getTime()));
saveProperties(properties);
// 运行程序
System.out.println("程序开始运行时间:" + now);
System.out.println("上次程序开始运行时间:" + startTime);
System.out.println("请按任意键退出程序。");
new Scanner(System.in).nextLine();
// 记录本次程序运行的结束时间
properties.setProperty(END_TIME_KEY, String.valueOf(new Date().getTime()));
saveProperties(properties);
}
private static Properties loadProperties() throws IOException {
Properties properties = new Properties();
InputStream input = Program.class.getClassLoader().getResourceAsStream(PROPERTIES_FILE_NAME);
if (input != null) {
properties.load(input);
}
return properties;
}
private static void saveProperties(Properties properties) throws IOException {
OutputStream output = new FileOutputStream(PROPERTIES_FILE_NAME);
properties.store(output, null);
output.close();
}
}
```
程序在运行时会加载名为 "program.properties" 的配置文件,该文件用于存储程序的开始时间和结束时间。如果文件不存在,则会创建一个新的文件。
程序在运行时会输出上次程序运行的开始时间和本次程序运行的开始时间。然后等待用户按下任意键,程序运行结束后会记录本次程序运行的结束时间。
请注意,程序记录的时间是基于系统时钟的,如果用户修改了系统时间,则记录的时间会不准确。
阅读全文