Tag: java date

将Java Date从一种格式转换为另一种格式而不将其转换为字符串

我正在尝试获取当前的系统日期,并将其格式化为Etc / UTC,然后进入此“dd.MM.yyyy HH:mm z”格式。 问题是格式化日期后格式化函数返回一个字符串而不是日期。 这是下面的代码spinet final Date currentDate = new Date(); final SimpleDateFormat dateFormatter = new SimpleDateFormat(“dd.MM.yyyy HH:mm z”); dateFormatter.setTimeZone(TimeZone.getTimeZone(“Etc/UTC”)); String finalDateTime= dateFormatter.format(currentDate); System.out.println(finalDateTime); 是否有任何替代解决方案允许我通过将我保留在此日期对象中来格式化日期,因为我已经在java 8之后和java 8之前研究了每个日期库,看起来如果我想格式化任何类型的日期或日期时间,我必须使用格式化程序将给定日期转换为字符串。 任何替代解决方案或不可能吗?

使用SimpleDateFormat将String转换为Date返回随机日期

我对以下行为感到很困惑。 我从一个方法返回2个日期作为字符串: getLastSupplierFlightResults() 我添加了一个屏幕截图,分别显示返回的日期为“2018-06-20 00:00:00”和“2018-06-24 00:00:00”,并将调试跟踪保留为显示值。 我只想将日期转换为20180620格式。 方法: .withStartDate() .withEndDate() …接受字符串值 我不明白的是“2017年12月6日00:00:00 GMT”的日期是从哪里来的? 这是最终被传递到.withStart和.withEnd方法的值,如20171206。 与往常一样,可能有一种更简单的方法来实现我的目标。

Java日期更改格式

我试图更改Date对象的格式,我试图这样做: for(Date date : dates){ DateFormat formatter = new SimpleDateFormat(“yyyy/MM/dd”); String formatterDate = formatter.format(date); Date d = formatter.parse(formatter.format(date)); } 但是这对d对象没有任何影响,它仍然采用旧格式,无法真正理解为什么会这样。