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

गो में व्युत्पन्न स्केलर प्रकारों के लिए unmarshaljson को कैसे लागू करें?

2025-04-13 को पोस्ट किया गया
ब्राउज़ करें:803

यह चुनौतीपूर्ण है क्योंकि unmarshaljson एक संरचना का उपयोग किए बिना स्केलर मान को संशोधित करने का एक तरीका प्रदान नहीं करता है। रिसीवर के मान को संशोधित करने के लिए unmarshaljson विधि। स्ट्रिंग मान। रिसीवर को परिणाम असाइन करें। How to Implement UnmarshalJSON for Derived Scalar Types in Go?

उदाहरण: var s string यदि गलत: = json.unmarshal (डेटा, और s); irr! = nil { वापसी की कमी } *intvalue = लुकअप (ओं) वापसी निल }

कोड उदाहरण:

पैकेज आयात ( "एन्कोडिंग/JSON" "एफएमटी" ) टाइप पर्सनिड इंट const ( बॉब पर्सनड = iota जेन राल्फ कोई नहीं = -1 ) var namemap = map [string] personid { "बॉब": बॉब, "जेन": जेन, "राल्फ": राल्फ, "कोई नहीं": कोई नहीं, } var idmap = map [personid] स्ट्रिंग { बॉब: "बॉब", जेन: "जेन", राल्फ: "राल्फ", कोई नहीं: "कोई नहीं", } func (intvalue personid) नाम () स्ट्रिंग { IDMAP लौटाएं [intvalue] } फंक लुकअप (नाम स्ट्रिंग) पर्सनड { नाममाप [नाम] लौटें } func (intvalue *personid) unmarshaljson (डेटा [] बाइट) त्रुटि { var s string यदि गलत: = json.unmarshal (डेटा, और s); irr! = nil { वापसी की कमी } *intvalue = लुकअप (ओं) वापसी निल } टाइप मायटाइप स्ट्रक्चर { व्यक्ति व्यक्ति `json:" व्यक्ति "` गिनती int `json:" गिनती "` ग्रीटिंग स्ट्रिंग `json:" ग्रीटिंग "` } func मुख्य () { var m mytype यदि गलत: = JSON.UNMARSHAL ([] बाइट (`{" व्यक्ति ":" राल्फ "," गिनती ": 4," ग्रीटिंग ":" हैलो "}`), और एम); irr! = nil { fmt.println (ERR) } अन्य { के लिए i: = 0; मैं आउटपुट:
हैलो राल्फ हैलो राल्फ हैलो राल्फ हैलो राल्फ
नवीनतम ट्यूटोरियल अधिक>

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

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

Copyright© 2022 湘ICP备2022001581号-3