2

簡単な質問かもしれませんが、私は混乱しており、あなたの助けが必要です。 私はこれを変換する必要があります。この中にミリ秒単位の整数を時間形式の文字列に変換する

let S: Int = 45296789 

を「12 34 56 789」Sはミリ秒を表す整数であると言うことである

。私に必要なのは、次のことができるソリューションの「hh mm ss iii

一つにそれをフォーマットすることです:

var a = S/1000/60/60 
var b = S/1000/60%60 
var c = S/1000 % 60 
var d = S % 1000 

String(format:"%02i %02i %02i %03i", a, b, c, d) 

しかし、私が必要とすることが可能である場合NSDateFormatter()NSTimeFormatter()を用いる方法です。

私はstackoverflowを調べましたが、解決策が多すぎるため、ミリ秒を含むものが見つかりませんでした。 (789ミリ秒部分)

答えて

2

これを試してみてください:

let s = 45296789 

let date = NSDate(timeIntervalSince1970: Double(s)/1000) 
let formatter = NSDateFormatter() 
formatter.timeZone = NSTimeZone(name: "UTC") 
formatter.dateFormat = "HH mm ss SSS" 

print(formatter.stringFromDate(date)) 
+0

素晴らしいです!ありがとう! – IamMashed

+1

"hh"の代わりに24時間形式の "HH"を使用することをお勧めします。 –

+0

@MartinR訂正していただきありがとうございます。回答が編集されました –

関連する問題