2017-03-08 57 views
0

我想將時間字符串從15:00:00 AM轉換爲03:00 PM,這就是我想要實現的結果。以不同格式快速轉換時間

var str = "15:00:00 AM"   // "15:00:00 AM" 

let df = DateFormatter() 
df.timeZone = TimeZone.current 
df.dateFormat = "HH:mm:ss a" // "Jan 1, 2000, 12:00 AM" 
let date = df.date(from: str) 

let df1 = DateFormatter() 
df1.dateFormat = "hh:mm a" 
str = df1.string(from: date!) // "12:00 AM" 

不知道我失蹤的地方嘗試了不同的方法,但仍然無法正確轉換時間。

PS:更多的答案,我檢查轉換的可能性,因爲我得到的時間字符串是從服務器端,我可以更新它們進行更正。

+8

怎麼可能'15:00:00 AM'是'AM' ??? –

+0

你是否用'AM'&'PM'以24小時格式獲得日期? –

+0

只是「15:00:00」。在「15:00:00 AM」中刪除「AM」。 – javimuu

回答

1

早上好,請試試這個代碼

let now = NSDate() 
let df = DateFormatter() 
df.dateFormat = "hh:mm a" 
let result = df.string(from: now as Date)