Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java中将日期格式从YYMMDD更改为YYYY-MM-DD?_Java_Date Format - Fatal编程技术网

如何在java中将日期格式从YYMMDD更改为YYYY-MM-DD?

如何在java中将日期格式从YYMMDD更改为YYYY-MM-DD?,java,date-format,Java,Date Format,我从机器可读代码中获取的日期格式为YYMMDD,如何将其更改为YYYY-MM-DD? 例如,我得到871223YYMMDD 我想把它改成1987-12-23YYYY-MM-DD 可能吗? 有人能帮我提供一些示例代码吗?代码是这样的: SimpleDateFormat fromUser = new SimpleDateFormat("dd/MM/yyyy"); SimpleDateFormat myFormat = new SimpleDateFormat("yyyy-MM-dd"); try

我从机器可读代码中获取的日期格式为YYMMDD,如何将其更改为YYYY-MM-DD? 例如,我得到871223YYMMDD 我想把它改成1987-12-23YYYY-MM-DD 可能吗?
有人能帮我提供一些示例代码吗?

代码是这样的:

SimpleDateFormat fromUser = new SimpleDateFormat("dd/MM/yyyy");
SimpleDateFormat myFormat = new SimpleDateFormat("yyyy-MM-dd");

try {

String reformattedStr = myFormat.format(fromUser.parse(inputString));
} catch (ParseException e) {
e.printStackTrace();
}

遵循并实现所需的简单步骤:

例如,日期为:

  String date = "871223";
使用源模式创建

    SimpleDateFormat sdf = new SimpleDateFormat("yyMMdd");
通过解析日期获取日期对象

    Date d1 = sdf.parse(date);
将模式更改为目标模式

    sdf.applyPattern("yyyy-MM-dd");
按照目标模式格式化

    System.out.println(sdf.format(d1));

希望这有帮助。

SimpleDateFormat是你的朋友,关于这个问题的很多例子似乎都是离题的,因为这个问题已经被回答了多次,在可能的重复之前,可能的重复至少链接到更新文档,Java 7或8将是首选,因为它会突出显示最近API中发生的任何可能的更改,所以最好的答案是真的!