我想更改从excel单元格文件中读取的日期格式是" 30-mar-2016"到2016年3月30日。我试过下面的
String inputDate = "30-mar-2016";
DateFormat df = new SimpleDateFormat("mm/dd/yyyy");
Date startDate;
startDate = df.parse(inputDate);
它给了我-java.text.ParseException:Unparseable date:" 30-mar-2016" 。 我也试过下面的代码
String inputDate = "30-mar-2016";
DateFormat df = new SimpleDateFormat("mm/dd/yyyy");
String startDate;
startDate = df.format(inputDate);
getting - java.lang.IllegalArgumentException:无法将给定的对象格式化为日期
任何人都可以帮助我。
答案 0 :(得分:3)
您的输入字符串30-mar-2016
的格式为dd-MMM-yyyy
。您的输出格式为MM/dd/yyyy
。所以你需要两个DateForamt
。一个用于解析原始输入字符串,一个用于格式化输出字符串。
DateFormat df1 = new SimpleDateFormat("dd-MMM-yyyy"); // for parsing input
DateFormat df2 = new SimpleDateFormat("MM/dd/yyyy"); // for formatting output
String inputDate = "30-mar-2016";
Date d = df1.parse(inputDate);
String outputDate = df2.format(d); // => "03/30/2016"
答案 1 :(得分:0)
我已解决使用以下
SimpleDateFormat sdf = new SimpleDateFormat("dd-MMM-yyyy");
Date date = sdf.parse("30-mar-2016");
sdf.applyPattern("MM/dd/yyyy");
System.out.println(sdf.format(date));//got 03/30/2016
感谢大家的快速回复