Java代码
直接复制该代码放到txt文件中,然后更改文件类型为java.
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
/**
* @Description
* @Author zl
* @Date 2024/6/28 9:16
*/
public class TimestampConvert {
public static void main(String[] args) {
String input;
Scanner scanner = new Scanner(System.in);
do {
System.out.println("请输入时间戳或时间字符串(时间戳以毫秒为单位13位整数,时间字符串格式为yyyy-MM-dd HH:mm:ss SSS): ");
input = scanner.nextLine();
// 判断输入是否为时间戳,若是则直接转换为时间字符串,否则转换为时间戳
if (input.matches("\\d+")) {
long convertedTimestamp = Long.parseLong(input);
String timeString = timestamp2String(convertedTimestamp);
System.out.println("时间戳转换为时间字符串: " + timeString);
} else {
try {
long convertedTimestamp = string2Timestamp(input);
System.out.println("时间字符串转换为时间戳: " + convertedTimestamp);
} catch (ParseException e) {
System.out.println("日期格式不正确");
}
}
System.out.println("是否继续转换? (y/n)");
} while ("y".equalsIgnoreCase(scanner.nextLine()));
}
// 将指定时间戳转换为时间字符串
public static String timestamp2String(long timestamp) {
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS").format(new Date(timestamp));
}
// 将指定时间字符串转换为时间戳,保留到毫秒级
public static long string2Timestamp(String timeString) throws ParseException {
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS").parse(timeString).getTime();
}
}
请先确保已经正确安装了Java运行环境(JRE)。你可以在cmd命令行中输入java -version
来检查Java的安装情况。
编译该Java文件
在文件存放路径里执行以下命令:
javac -encoding utf8 TimestampConvert.java
执行该脚本
编译之后执行以下命令:
java -Dfile.encoding=UTF-8 TimestampConvert