Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> IOS

आईफोन/आईओएस में JSON ऑब्जेक्ट का विश्लेषण कैसे करें?

<घंटा/>

JSON का मतलब जावास्क्रिप्ट ऑब्जेक्ट नोटेशन है। अधिकांश एपीआई या किसी अन्य सेवाओं के साथ काम करते समय डेटा JSON प्रारूप में वापस कर दिया जाता है और हमें इसे प्रयोग करने योग्य और सहायक भाषा प्रारूपों में बदलने की आवश्यकता होती है।

आईओएस का फाउंडेशन फ्रेमवर्क जेएसओएन को डिक्शनरी, स्ट्रिंग्स, बूल इत्यादि जैसे समर्थित प्रारूपों में कनवर्ट करने के लिए एक वर्ग JSONSerialization प्रदान करता है।

JSONSerialization वर्ग एक विधि प्रदान करता है jsonObject(with:options:) जो json को पार्स करता है और परिणाम के रूप में Any देता है, और यदि डेटा को पार्स नहीं किया जा सकता है तो एक त्रुटि।

// Example JSON:
/*
{
   "age": 42.0,
   "name": {
      "firstName": “tut”
   }
}
*/

आइए इसे एक अन्य उदाहरण की मदद से देखें, मान लीजिए कि हमें अपने एपीआई कॉल से डेटा मिला है, अब इस डेटा को पार्स करने के लिए हम JSONSerialization का उपयोग करेंगे। jsonObject(साथ:विकल्प:)

if let data = data, let json = try? JSONSerialization.jsonObject(with: data, options: []) as? [String: Any] { }

// अब उपरोक्त जेसन ऑब्जेक्ट में स्ट्रिंग और किसी के शब्दकोश के रूप में प्राप्त डेटा शामिल है, या यह बाहर चला जाता है अगर इसे और ब्लॉक करने दें

// मान लीजिए कि जोंस में एक कुंजी "छात्र" है और उससे जुड़ा मूल्य एक शब्दकोश है

guard let student = json[“Student”] as? [String: Any] else { return }

इस प्रकार हम जेसन को पार्स कर सकते हैं और इससे मूल्य प्राप्त कर सकते हैं। हम मॉडल और इनिशियलाइज़र का उपयोग करके इसे और बढ़ा सकते हैं। आइए एक स्थानीय json फ़ाइल बनाकर और फिर उसे पार्स करने का प्रयास करके इसका एक उदाहरण देखें।

आइए निम्नलिखित डेटा के साथ एक json फ़ाइल बनाएं और इसे एक्सरसाइज के रूप में सहेजें।json

{
   "Warmup": {
      "Exercises": [
         {
            "Name": "Neck Strech",
            "images": [
               "http:sdf.com",
               "sdf",
               "sdf",
               "sdf"
            ],
          "time": 30
         }
      ]
   }
}

हम अब इस स्थानीय जोंस को पार्स करेंगे और निम्नलिखित कोड का उपयोग करके परिणाम प्रिंट करेंगे -

if let filePath = Bundle.main.path(forResource: "exerciseData", ofType: "json") {
   do {
      let data = try Data(contentsOf: URL(fileURLWithPath: filePath), options: .mappedIfSafe)
      let jsonResult = try JSONSerialization.jsonObject(with: data, options: .mutableLeaves)
      if let exercises = jsonResult as? [String:AnyObject] {
         if let warmups = exercises["Warmup"] as? [String:AnyObject] {
            print(warmups)
         }
      }
   } catch {
      print(error.localizedDescription)
   }
}

जब हम इस कोड को चलाते हैं, तो हमें जो आउटपुट मिलता है, वह नीचे होता है।

आईफोन/आईओएस में JSON ऑब्जेक्ट का विश्लेषण कैसे करें?


  1. फोन की स्पीड कैसे बढ़ाएं

    iPhones उम्र के साथ धीमे हो जाते हैं - खासकर जब एक चमकदार नया मॉडल सामने आता है और आप सोच रहे हैं कि अपने आप को इलाज करने का औचित्य कैसे दिया जाए। इसका कारण अक्सर बहुत सारी जंक फ़ाइलें और पर्याप्त खाली स्थान नहीं होने के साथ-साथ पुराने सॉफ़्टवेयर और पृष्ठभूमि में चल रहे सामान होते हैं जिनकी आवश्यकता

  1. iOS को डाउनग्रेड कैसे करें

    आईओएस अपडेट अविश्वसनीय रूप से रोमांचक हो सकते हैं। न केवल वे अद्भुत सुविधाओं के साथ आते हैं जो आपके iPhone की कार्यक्षमता में सुधार करते हैं, बल्कि अधिकांश वृद्धिशील अपडेट में बहुत सारे सुधार भी होते हैं जो ज्ञात बग और समस्याओं को हल करते हैं। हालाँकि, iOS के बीटा संस्करणों के साथ ऐसा नहीं है। वे अ

  1. iOS 12 कैसे स्थापित करें

    Apple ने अभी-अभी अपने बहुप्रतीक्षित iOS 12, यानी 17 सितंबरth की रिलीज़ की तारीख की घोषणा की है। . लेकिन अगर आप उन लोगों में से हैं जो तब तक इंतजार नहीं करना चाहते हैं, तो आप अभी iOS 12 का गोल्डन मास्टर वर्जन इंस्टॉल कर सकते हैं। इसके लिए आपको Apple बीटा सॉफ़्टवेयर प्रोग्राम में शामिल होना होगा और अप