回答
添加腳本組件,馬克HireDate
作爲輸入柱,用的dataType DT_DBTIMESTAMP
添加新的輸出列outHireDate
在腳本編寫如下:
聲明的格式的數組:
Dim strFormats() as string = {"dd/MM/yyyy","yyyy/MM/dd","MM/dd/yyyy"}
並在Input0_ProcessInputRow
下使用DateTime.ParseExact
功能如下:
Row.OutHireDate = DateTime.ParseExact(Row.HireDate,strFormats,New System.Globalization.CultureInfo("en-GB"))
重要提示
這可能會導致衝突時,日,月比13
(例如:01/03/2010)低
如果我們不知道哪一行有哪種格式,這是毫無意義的。 –
@NickMcDermaid我同意這一點,這就是我的意思是在我的回答中的重要筆記 – Hadi
首先在「if」語句中驗證或嘗試解析(如果需要,嵌套)。 –
- 1. 日期轉換以特定格式
- 2. 以特定格式轉換日期和時間字符串
- 3. 字符串轉換爲日期時間以特定格式
- 4. 轉換特定日期時間格式的時間戳值
- 5. 以特定時間格式轉換
- 6. 以法語格式以mysql日期時間格式轉換日期
- 7. 日期和時間格式在SSIS
- 8. 轉換日期時間,特定的格式在C#
- 9. 以特定格式格式化日期時間
- 10. 以特定格式格式化日期
- 11. 轉換日期至特定格式
- 12. - [R日期轉換特定格式
- 13. 將日期轉換爲特定格式
- 14. 格式日期時間特定時區
- 15. 轉換日期時間的不同格式的特定字符串格式
- 16. 轉換「日期」以不同的格式,以特定的格式在紅寶石
- 17. SQL日期時間格式轉換
- 18. SQL - 轉換日期時間格式
- 19. 日期時間轉換格式到XML
- 20. 日期時間格式轉換爲vb.net
- 21. 轉換日期時間格式?
- 22. 轉換日期時間格式
- 23. 如何轉換日期時間格式?
- 24. SQL日期時間格式轉換
- 25. Python的日期時間格式轉換
- 26. 日期時間轉換 - 使用格式
- 27. 日期時間格式轉換
- 28. PHP轉換日期時間格式
- 29. 轉換的日期時間格式
- 30. Python日期時間格式轉換
你的源文件格式是不明確的。 01/10/2008是在1月1日還是10日?你不知道,所以你不能轉換它。還*在SQL Server中忘記*關於日期'格式'。選擇正確的數據類型'DATE'並忘記視覺格式 –
除非您有一些方法來確定平面文件中每個記錄中使用的日期格式,否則無法正確完成。正如@ Nick.McDermaid所寫的那樣 - 所有日期小於13的日期都不明確。此外,您應該知道[日期時間數據類型不保存顯示格式。](http://stackoverflow.com/questions/30032915/how-to-cast-the-datetime-to-time/30033028#30033028) –
如果它只有兩種格式,即yyyy/mm/dd或dd/mm/yyyy,可以更改爲yyyy/mm/dd格式嗎? @ Nick.McDermaid –