2015-09-21 196 views
1

我有一个解析csv文件的程序,我用它来根据每行的csv数据做一些操作。ParseException:解析日期错误试图从csv解析日期(windows)

有趣的是,在Mac上的程序运行良好,并用它在Windows上完美地运行良好,但是从现在的一些原因,当我在Windows上运行它,我得到这个错误:

java.text.ParseException: Unparseable date: "27-Nov-14" at java.text.DateFormat.parse(Unknown Source) ~[na:1.8.0_60] at controllers.PurchaseInfo$.controllers$PurchaseInfo$$changeDateFormat( PurchaseInfo.scala:44) ~[play-scala.play-scala-1.1%20SNAPSHOT-sans-externalized. jar:na]

有在日期格式中没有不同。我没有改变任何我不知道为什么有一个错误。

这是我来格式化日期PurchaseInfo FUNC:

private def changeDateFormat(dateInString: String): String = { 
    //System.out.println(dateInString) 
    //val formatter: SimpleDateFormat = new SimpleDateFormat("MMM dd, yyyy") 
    val formatter: SimpleDateFormat = new SimpleDateFormat("dd-MMM-yy") 
    val formatter2: SimpleDateFormat = new SimpleDateFormat("dd/MM/yyyy") 
    val date: Date = formatter.parse(dateInString) 
    return formatter2.format(date).toString 

请大家帮忙,让我知道你需要什么样的代码片段,了解更多...

+0

你的第FORMATTER预计日期为27/11/14。你的约会是14-11-27。格式异常。删除格式化程序2,使用格式化程序。 –

回答

1

确保您的Windows机器有英语语言环境。

您可以指定在SimpleDateFormat的构造函数的语言环境,以避免这种问题:

val formatter: SimpleDateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.ENGLISH);