具体来说,我有一个任何格式的日期字符串,我想将其转换为字符串为“20121112”,请提供任何帮助......我知道这可以通过 SimpleDateFormatter 完成。
问问题
10149 次
6 回答
7
您可以在这里应用任何魔法。首先你需要弄清楚日期格式是什么,然后你需要转换它。例如,01/02/03 是 1903 年 2 月 1 日还是 2003 年 2 月 1 日,或者是 2003 年 1 月 2 日,还是 2001 年 2 月 3 日。您决定。;)
于 2012-12-06T09:13:38.163 回答
7
像这样的东西...
SimpleDateFormat source = new SimpleDateFormat("dd/MM/YYYY"); // British format
SimpleDateFormat target = new SimpleDateFormat("YYYYMMdd");
String oldDate = "06/12/2012";
String newDate = target.format(source.parse(oldDate));
于 2012-12-06T09:13:47.670 回答
1
它无法完成,因为您必须指定日、月的顺序。
罗马尼亚日期字符串:“30.01.2013” 匈牙利日期字符串:“2013.01.30” 美国日期字符串:“01.30.2013”
而且您想从任何格式“识别”...
至少必须知道格式,不再是任何格式
于 2012-12-06T09:16:20.347 回答
0
您需要将日期传递到格式化程序。一种方法是这样的:
Date date = new Date(System.currentTimeMillis());
FastDateFormat dateFormatter = FastDateFormat.getInstance("yyyyMMdd");
System.out.println(dateFormatter.format(date));
于 2012-12-06T09:14:59.620 回答
0
如果您知道日期格式(即 mm/dd 或 dd/mm),则可以使用类似的方法:
// my date in String format in yyyy/mm/dd
String myDate = "20121206";
Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd"); // format
cal.setTime(sdf.parse(myDate));
这会将您的字符串转换为Calendar
,Date#parse
已弃用。
于 2012-12-06T09:16:21.920 回答
-1
像 date -d "Fri Apr 1" +%D 仅适用于 java 吗?
于 2016-04-01T10:04:31.990 回答