2017-05-02 143 views
-7

我想將December 20, 2016轉換爲12/20/16如何將字符串日期轉換爲不同的字符串日期?

12月20日是字符串格式。不太確定我是否可以使用NSDateFormatter。我不會MM/DD/YYYY到YYYY:DD:MM之類的東西。我想轉換字符串December 20, 2016,並將其轉換爲12/20/16

+0

http://stackoverflow.com/questions/37923481/convert-date-string-swift的可能的複製?noredirect = 1&lq = 1和http://stackoverflow.com/questions/31040718/convert-a-date-string-to-yyyy-mm-dd-hhmmss-format-in-android-swift和http:// stackoverflow .com/questions/34826282/swift-convert-a-string-to-a-date-and-then-to-a-string-in-a-different-format和http://stackoverflow.com/questions/39159324/convert-date-formatter-to-another-date-formatter – rmaddy

+0

在複製副本中的答案時,請記住,您需要調整格式以符合您的特定需求。 – rmaddy

+0

基於將一種格式的日期字符串轉換爲另一種格式的日期字符串(這就是您要求的)的許多例子,用您的嘗試代碼編輯您的問題,並清楚地解釋您遇到的問題。 – rmaddy

回答

0

是的,你可以使用DateFormatter(在Swift 3中沒有NS,這同樣適用於Date不是NSDate)。要正確解析您的日期字符串,你需要使用的日期格式"MMMM dd, yyyy",並設置日期格式語言環境"en_US_POSIX"

let string = "December 20, 2016" 
let formatter = DateFormatter() 
formatter.locale = Locale(identifier: "en_US_POSIX") 
formatter.dateFormat = "MMMM dd, yyyy" 

if let date = formatter.date(from: dateString) { 
    print(date) // "2016-12-20 02:00:00 +0000\n" 
    formatter.dateStyle = .short 
    let stringFromDate = formatter.string(from: date) // "12/20/16" 
} 
+0

問題問如何將第一個字符串轉換爲第二個字符串。這只是答案的一半。而且這個問題肯定有很多重複。 – rmaddy

+0

問題是如何將日期字符串(沒有時間)轉換爲日期。 –

+0

這就是標題說的,但問題顯示了兩個不同的日期字符串。 – rmaddy