【问题标题】:How to get date and time in below format in java? [closed]如何在java中以以下格式获取日期和时间? [关闭]
【发布时间】:2020-07-18 09:11:12
【问题描述】:

如何获取当前日期和时间以及如何将其转换为以下字符串格式?

2020 年 6 月 4 日下午 05:00

在那之后我需要在日期上增加几分钟吗?请帮忙!

【问题讨论】:

  • 到目前为止你有什么尝试?
  • 你是如何得到它的?什么地方出了错?任何错误或空输出?你能告诉我们你的代码吗?
  • 你在这个网站上搜索过吗?
  • 你们的反对票太烦人了。对于 Java 初学者来说,这是一个有效的好问题!我建议查找 SimpleDateFormat 以将日期格式化为该字符串。此外,您可以通过以下方式简单地获取当前日期和时间:Date d = new Date();希望对您有所帮助!
  • @F_Schmidt 我没有投反对票,但由于缺乏显示的搜索和研究工作,这个问题当然值得投反对票。我同意评论中的建设性批评比否决更好(或者可以同时提供两者)。

标签: java datetime-format current-time


【解决方案1】:

你的答案应该是这样的:

String dateTimePattern = "dd-MM-yyyy HH:mm a";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(dateTimePattern );
LocalDateTime yourDay= LocalDateTime.of(2020, 4, 6, 17, 00);
System.out.println(formatter.format(ZonedDateTime.of(yourDay, ZoneId.of("UTC-5"))));

请查看this 以获取有关可用格式的更多信息。

【讨论】:

  • 时区信息从何而来?
  • 这是一个简单的假设,问题是如何格式化,而不是 OP 在哪个时区。
  • 是的,没问题...只是想知道...这不是一个糟糕的答案,但是添加一些不是明确需要的信息会以某种方式捕获 ;-)
  • 要添加分钟或任何一般的时间单位,请尝试LocalDateTime example = LocalDateTime.now().plusMinutes(5);
  • 添加时区对于许多用途来说都是一个好主意。例如,America/Chicago 优于 UTC-5,即 region/city 格式。
【解决方案2】:
Date yourDate = new Date();  
SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy h:m a");  
String formatedDate= sdf.format(yourDate);

【讨论】:

  • 请不要教年轻人使用早已过时且臭名昭著的SimpleDateFormat类。至少不是第一选择。而且不是没有任何保留。今天我们在java.time, the modern Java date and time API, 和它的DateTimeFormatter 中做得更好。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多