Ich habe von meinem Ende versucht und auch geblättert. Vielleicht wurde diese Frage schon oft gestellt. Ich analysierte Wetter Antwort der Stadt (ex: Mar del Plata) basierend auf Zeitzone. Ich möchte Zeit in HH: mm Format. Im Folgenden finden Sie die Beispiel-JSON-Antwort.Wie bekomme ich Zeit von JSON String mit Swift?
"Sonnenaufgang": "2016-07-10T08: 05: 02-0300", "Sonnenuntergang": "2016-07-10T17: 46: 29-0300"
Mein Code:
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZZZZ"
dateFormatter.timeZone = NSTimeZone(forSecondsFromGMT: 0)
guard let date = dateFormatter.dateFromString(dateString) else {
assert(false, "no date from string")
}
dateFormatter.dateFormat = "HH:mm"
//dateFormatter.timeZone = NSTimeZone(name: "UTC")
return dateFormatter.stringFromDate(date)
Immer wenn ich eine Datumszeichenkette im Etikett drucke oder zeige, werden die Stunden geändert. Ich möchte genau die richtige Zeit als Antwort kommen.
Meine temporäre Lösung für die oben ist
// Begin - Its a temperory solution
if dateString.contains("T") {
print("dateString.contains(T)")
let myArray = dateString.componentsSeparatedByString("T")
if myArray.count > 0 {
let str = myArray[1]
if str.contains("+") {
print("(str.contains(+))")
let myArr = str.componentsSeparatedByString("+")
if myArr.count > 0 {
let str1 = myArr[0]
if str1.contains(":") {
print("str1.contains(:)")
let myAr = str1.componentsSeparatedByString(":")
if myAr.count > 0 {
let str2 = myAr[0]
let str3 = myAr[1]
let str4 = "\(str2):\(str3)"
print(str4)
return str4
}
//print(myAr)
}
}
}
if str.contains("-") {
print("(str.contains(-))")
let myArr = str.componentsSeparatedByString("-")
if myArr.count > 0 {
let str1 = myArr[0]
if str1.contains(":") {
print("str1.contains(:)")
let myAr = str1.componentsSeparatedByString(":")
if myAr.count > 0 {
let str2 = myAr[0]
let str3 = myAr[1]
let str4 = "\(str2):\(str3)"
print(str4)
return str4
}
//print(myAr)
}
}
}
}
}
// End - Its a temporary solution
ich eine bessere Lösung wollen, anstatt meine temporäre.
Edit1: Wie ich bereits erwähnt habe, möchte ich gleichzeitig in JSON Antwort kommen durch Verwerfen der Zeitzone.
Bitte schlagen Sie mir vor und leiten Sie mich, wie Sie in Zukunft mit der Zeitzone umgehen. Ich hoffe, ihr versteht, was ich vorhabe. Tut mir leid für mein schlechtes Englisch.
Vielen Dank im Voraus.
Google "Pyramid of doom swift". Es wird Ihnen helfen, Ihren Code einfacher zu lesen/zu warten. –