2015-09-21 155 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);