如何在java中将日期转换为2016年2月26日[重复]

Posted

技术标签:

【中文标题】如何在java中将日期转换为2016年2月26日[重复]【英文标题】:how to convert Date in to Feb 26, 2016 in java [duplicate] 【发布时间】:2017-11-01 08:50:21 【问题描述】:

我的日期格式为 2016 年 2 月 20 日,我必须将其转换为 2016 年 2 月 26 日,请建议我如何将其转换为这种格式。

【问题讨论】:

查看文档:docs.oracle.com/javase/6/docs/api/java/text/… 你能建议我采用哪种格式 这就是文档的用途 日期不同。 20 日转换为 2 月 26 日。确实是时间旅行! @ResearchDevelopment 你的用户名很讽刺。 【参考方案1】:
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class Main 

  public static void main(String[] args) throws ParseException 

    String theInDate = "2/20/2016";

    String theInFormat = "MM/dd/yyyy";
    String theOutFormat = "MMM dd, yyyy";

    final SimpleDateFormat theSdfInputFormatter = new SimpleDateFormat(theInFormat);
    final SimpleDateFormat theSdfOutputFormatter = new SimpleDateFormat(theOutFormat);

    final Date theDate = theSdfInputFormatter.parse(theInDate);

    final String theDateText = theSdfOutputFormatter.format(theDate);

    System.out.println(theDateText);

    

您可能还想检查日期解析器上的 setLinient(true) 功能。

以及使用新的日期 API

    String theInDate = "2/20/2016";

    String theInFormat = "M/d/yyyy";
    String theOutFormat = "MMM dd, yyyy";

    final DateTimeFormatter theSdfInputFormatter = DateTimeFormatter.ofPattern( theInFormat );
    final DateTimeFormatter theSdfOutputFormatter = DateTimeFormatter.ofPattern(theOutFormat);

    final LocalDate theDate = LocalDate.from( theSdfInputFormatter.parse( theInDate ) );

    final String theDateText = theSdfOutputFormatter.format(theDate);

    System.out.println(theDateText);

注意线程安全。看看javadoc。 此解决方案适用于 Java。对于 android,正如所标记的,它应该非常相似。 尽管这是一个重复的答案,但我希望它可以帮助某人快速解决问题并了解它是如何工作的,以便进一步自学。

【讨论】:

回答明显重复的问题没有帮助。 仅供参考,麻烦的旧日期时间类,如 java.util.Datejava.util.Calendarjava.text.SimpleTextFormat 现在是 legacy,被 java.time 类取代。见Tutorial by Oracle。

以上是关于如何在java中将日期转换为2016年2月26日[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 sql 中将“2017 年 5 月 17 日”转换为日期?

无法在 Swift 中将日期转换为特定格式

如何在android中将字符串转换为日期时间[关闭]

如何在java中将时间设置为日期对象

java中将日期日期如何转换成另一种格式??高手!!!

在android中将时间戳转换为当前日期