0

在我的代码中,我采用 dd/mm/yyyy 格式的日期用户输入并将结果显示为字符串。例如,如果我输入 2/2/2011,它应该显示为“2 Feb 2011”。但我的代码总是将 JAN 显示为月份。

import java.util.*;
import java.text.*;
public class ConvertDate {
public static void main(String[] args) {


Scanner sc = new Scanner(System.in); 
System.out.print("Enter Date: "); 
String ind = sc.nextLine(); 

DateFormat df = new SimpleDateFormat("dd/mm/yyyy");
Date d = null;
try {

d=df.parse(ind);

}
catch(ParseException e) {
System.out.println("Unable to parse " + ind);}


DateFormat df3 = DateFormat.getDateInstance(DateFormat.LONG);


String s3 = df3.format(d);


System.out.println("The entered date is: " + s3);

}
}
4

4 回答 4

4

我认为它更像是这样的:

DateFormat df = new SimpleDateFormat("dd/MM/yyyy");

m是分钟,M一个月。

于 2013-08-01T12:45:39.877 回答
2

正确的日期格式应如下:

final DateFormat inputDf= new SimpleDateFormat("dd/MM/yyyy");
final DateFormat outputDf= new SimpleDateFormat("dd MMM yyyy");

它将给出如下输出:

Input:  01/08/2013
Output: 01 Aug 2013
于 2013-08-01T12:51:01.500 回答
0

在格式字符串中,m是分钟,M是月份。

于 2013-08-01T12:51:02.050 回答
0

如果您预计“二月”但看到“一月”,这可能是由于日历的索引。查看类似问题

于 2013-08-01T12:54:22.710 回答