मैं वास्तव में स्विफ्ट में एक JSON फ़ाइल पढ़ने की कोशिश कर रहा हूं ताकि मैं इसके साथ खेल सकूं। मैंने 2 दिनों का सबसे अच्छा हिस्सा फिर से खोज और विभिन्न तरीकों की कोशिश कर रहा है, लेकिन अभी तक कोई भाग्य नहीं है इसलिए मैंने StackOverFlow पर हस्ताक्षर किए हैं यह देखने के लिए कि क्या कोई मुझे सही दिशा में इंगित कर सकता है .....
मेरी JSON फ़ाइल को test.json कहा जाता है और इसमें निम्नलिखित शामिल हैं:
{
"person":[
{
"name": "Bob",
"age": "16",
"employed": "No"
},
{
"name": "Vinny",
"age": "56",
"employed": "Yes"
}
]
}
फ़ाइल सीधे दस्तावेजों में संग्रहीत की जाती है और मैं निम्नलिखित कोड का उपयोग करके इसे एक्सेस करता हूं:
let file = "test.json"
let dirs : String[] = NSSearchPathForDirectoriesInDomains(
NSSearchpathDirectory.DocumentDirectory,
NSSearchPathDomainMask.AllDomainMask,
true) as String[]
if (dirs != nil) {
let directories: String[] = dirs
let dir = directories[0]
let path = dir.stringByAppendingPathComponent(file)
}
var jsonData = NSData(contentsOfFile:path, options: nil, error: nil)
println("jsonData \(jsonData)" // This prints what looks to be JSON encoded data.
var jsonDict = NSJSONSerialization.JSONObjectWithData(jsonData, options: nil, error: nil) as? NSDictionary
println("jsonDict \(jsonDict)") - This prints nil.....
अगर कोई मुझे सिर्फ सही दिशा में एक धक्का दे सकता है कि मैं JSON फाइल को कैसे डी-सीरियल कर सकता हूं और इसे एक सुलभ स्विफ्ट ऑब्जेक्ट में डाल सकता हूं तो मैं हमेशा आभारी रहूंगा!
सधन्यवाद,
Krivvenz।
path
केवल if
दायरे में दिखाई देता है , और जब आप इसे उपयोग करते हैं तो अनसुलझे होते हैं NSData(contentsOfFile, options, error)
; आपके पास enum नामों में टाइपो भी है।