【问题标题】:Java Convert given date to date format like MM/dd/yyyy [duplicate]Java将给定的日期转换为日期格式,如MM / dd / yyyy [重复]
【发布时间】:2023-03-30 21:34:01
【问题描述】:

我有一种情况,我只能得到 2016 年 9 月 2 日这样的日期。由此,我需要解析并创建一个像 M/D/YYYY 这样的模式。由此我可以将任何输入日期转换为上述模式 M/D/YYYY。

在 java 中是否有任何实用程序/API?

【问题讨论】:

  • 如果你parse它你得到一个Date和一个Date没有模式,所以你需要使用另一个SimpleDateFormat来格式化它

标签: java date datetime


【解决方案1】:

根据您的要求,首先使用适当的格式解析输入字符串。然后你格式化日期。更多信息请参考SimpleDateFormat

SimpleDateFormat dateFormat = new SimpleDateFormat("M/d/yyyy");
Date myDate = dateFormat.parse("9/2/2016");
SimpleDateFormat dateFormat2 = new SimpleDateFormat("MM/dd/yyyy");
System.out.println(dateFormat2.format(myDate));

输出

2016 年 9 月 2 日

【讨论】:

  • 在我的例子中,日期是动态的,它可能是 M/d/yyyy 或 d/MM/yy ..etc。所以,我不能指定你在第 1 行中指定的格式。对于使用第 1 行,我需要知道输入日期的格式,我不会动态知道。
  • 你从未在你的问题中提到过。请更新你的问题以及日期的来源(它是如何动态的)?
【解决方案2】:

您可以使用 SimpleDateFormat 来执行此操作。

SimpleDateFormat dateFormat = new SimpleDateFormat(MM/dd/yyyy);

https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html

【讨论】:

  • 一个完整的答案需要在不访问链接的情况下显示答案。请包含链接的相关部分、显示示例或将此作为评论。
猜你喜欢
  • 2012-05-05
  • 2013-10-27
  • 2017-06-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-25
  • 1970-01-01
相关资源
最近更新 更多