即使经过大量搜索,我也没有找到适合我问题的合适答案。 它是Java API中的DateConvertUtil类。 这是一种重构/功能任务。
我有一个方法,该方法可解析给定的日期字符串,并在另一个方法的帮助下将其格式化并返回LocalDateTime(这种方法必须具有太多的依赖性)。
我想获取用户的时区,将(或可能不)转换为LocalDateTime,但不想每次都保存LocalDateTime,而是保存UTC。
我现在的问题是如何解决这个问题。 我似乎没有得到补偿。
解析器以前可以使用,但仅适用于LocaldateTime,格式化程序也可以使用。
到目前为止,我有
public static LocalDateTime parseIso8601(String date) {
if (date == null || date.isEmpty() || date.trim().equalsIgnoreCase("") || date.length() < 10) throw new
IllegalArgumentException("Date cannot by empty or smaller than 10 characters for parsing! Minimum date " +
"is yyyy-MM-dd");
LocalDateTime localDateTime;
OffsetDateTime offsetDateTime = OffsetDateTime.now();
offsetDateTime.toInstant().atZone(ZoneOffset.UTC);
localDateTime = offsetDateTime.toLocalDateTime();
return localDateTime.parse(date,buildIso8601Formatter());
所以我已经阅读了有关ZonedDateTime和Timestamps的内容,但是也许我只是想不通。
感谢您的帮助。