"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > मैं गो में अज्ञात JSON फ़ॉर्मेट को अनमर्शल कैसे कर सकता हूँ?

मैं गो में अज्ञात JSON फ़ॉर्मेट को अनमर्शल कैसे कर सकता हूँ?

2024-12-23 को प्रकाशित
ब्राउज़ करें:362

How Can I Unmarshal Unknown JSON Formats in Go?

अज्ञात प्रारूप का अनमर्शल JSON डेटा

परिचय

आपका JSON डेटा एक अज्ञात प्रारूप का अनुसरण करता है, जो अनमर्शल करने में चुनौती पेश करता है इसे GoLang संरचना में बदलें। यह आलेख इस परिदृश्य को प्रभावी ढंग से संभालने के चरणों के माध्यम से आपका मार्गदर्शन करेगा।

अनमर्शल विद मैप[स्ट्रिंग]इंटरफ़ेस{}

चूंकि आप कुंजियों को नहीं जानते हैं अग्रिम, आप अपने JSON पेलोड को अनमर्शल करने के लिए मैप[स्ट्रिंग]इंटरफ़ेस{} का उपयोग कर सकते हैं। यह आपको मानों के प्रकार निर्दिष्ट किए बिना कुंजी-मूल्य जोड़े को मानचित्र के रूप में संग्रहीत करने की अनुमति देता है।

var grades map[string]interface{}

err := json.Unmarshal([]byte(jsonString), &grades)
fmt.Println(err)

fmt.Printf("%#v\n", grades)

यह JSON डेटा को इंटरफेस के स्ट्रिंग्स के नेस्टेड मैप के रूप में आउटपुट करेगा, जो गतिशील रूप से डेटा का निरीक्षण और प्रसंस्करण करने के लिए उपयोगी हो सकता है।

json का उपयोग करना:"-" टैग

आप JSON से कुछ फ़ील्ड को बाहर कर सकते हैं json:"-" टैग का उपयोग करके मार्शलिंग/अनमर्शलिंग। यदि आप कुछ डेटा को निजी रखना चाहते हैं या सर्कुलर संदर्भों से बचना चाहते हैं तो यह उपयोगी हो सकता है।

type GradeData struct {
    Grades map[string]interface{} `json:"-"`
}

var gradesData GradeData
err := json.Unmarshal([]byte(jsonString), &gradesData.Grades)
fmt.Println(err)

fmt.Printf("%#v\n", gradesData)

इस उदाहरण में, ग्रेड फ़ील्ड को ग्रेड डेटा के JSON प्रतिनिधित्व में शामिल नहीं किया जाएगा, लेकिन इसका उपयोग अभी भी JSON को संग्रहीत और पुनर्प्राप्त करने के लिए किया जा सकता है डेटा।

निष्कर्ष

मानचित्र[स्ट्रिंग]इंटरफ़ेस{} का उपयोग करके और json:"-" टैग, आप GoLang structs में अज्ञात प्रारूप के JSON डेटा को सफलतापूर्वक अनमर्शल कर सकते हैं। यह दृष्टिकोण आपको गतिशील और अज्ञात JSON संरचनाओं को सुरुचिपूर्ण ढंग से संभालने की अनुमति देता है।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3