2016-11-11 58 views
1
let dateFormater : DateFormatter = DateFormatter() 
dateFormater.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZ" 
let date = dateFormater.date(from: "2016-11-11T11:42:27Z") 
print("date is ---->%@",date) 

let timestamp = date?.timeIntervalSince1970 
print("timestamp is ---->%@",timestamp!) 

let str = String(format: "%@",timestamp!) 
print("str value is ---->%@",str) 

date is -----> 2016-11-11 11:42:27 +000 
timestamp is----->1478864547.0 
str value is-----> null 

獲取日期和時間戳記值。如何將timestamp值更改爲字符串。意思是1478864547.0(timestampvalue)字符串合成時間戳不以字符串格式更改

let str = String(format: "%@",timestamp!)這是什麼錯了。

回答

1

您可以簡單地使用let timestampInString = "\(timestamp)"

如果是可選的,然後

if let timestamp = date?.timeIntervalSince1970 { 
    let timestampInString = "\(timestamp)" 
} 
+0

謝謝尼拉夫我可以打印價值 –

1

的問題是,timestamp不是一個對象 - 這是一個TimeInterval(這僅僅是一個typealiasDouble)。如果你想使用格式化的字符串,你需要做"%lf"

0

你得到空值。 timestamp不是String值,所以你不能直接得到String值,你必須使用FloatString鑄造 做如下我相信它會適用於你。

let dateFormater : DateFormatter = DateFormatter() 
dateFormater.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZ" 
let date = dateFormater.date(from: "2016-11-11T11:42:27Z") 
print("date is ---->%@",date) 

let timestamp = date?.timeIntervalSince1970 
print("timestamp is ---->%@",timestamp!) 

let str = String(format: "%0.0f",timestamp!) 
print("str value is ---->%@",str) 

TimeInterval是Double,so的使用或「0.0f」「%lf」的typealias。