java - 嵌套异常是 java.time.format.DateTimeParseException: Text '3030821'
问题描述
我怎样才能解析这个字符串
3030821
迄今为止喜欢
303-08-21
我的意思是公元年(Anno Domini),
我也希望这个解决方案能够抵抗 String 之类的20200820
解决方案
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class Main {
public static void main(String[] args) {
LocalDate date = LocalDate.parse("3030821", DateTimeFormatter.ofPattern("uuuMMdd"));
System.out.println(date.format(DateTimeFormatter.ofPattern("u-MM-dd")));
date = LocalDate.parse("20200820", DateTimeFormatter.ofPattern("uuuMMdd"));
System.out.println(date.format(DateTimeFormatter.ofPattern("u-MM-dd")));
}
}
输出:
303-08-21
2020-08-20
在Trail: Date Time了解有关现代日期时间 API 的更多信息。
推荐阅读
- java - 无法向 Firebase 进行身份验证
- python - 具有列或行最大限制的 Pyspark 数据框
- maven - 如何在 pom.xml 中检索 Maven 内部版本号?
- angular - 如何在Angular 4中使用打字稿基于其他下拉选择值显示下拉值
- c++ - 在 Windows 中运行 .exe 文件时如何防止 ucrtbase.dll 崩溃?
- c - 从文件的 inode 号获取文件名
- dashboard - 如何将现有仪表板复制到 Appdynamics 中的新项目
- python - 在哪里可以找到内置类和 ABC 的 Python 类型提示?
- javascript - Web 组件中页面加载时的模式弹出窗口
- python-3.x - 语音识别库给出输入设备错误