क्या रूबी में JSON को XML में कनवर्ट करने का कोई तरीका है?मैं जेएसओएन को रूबी में एक्सएमएल में कैसे परिवर्तित कर सकता हूं?
उत्तर
require 'active_support' #for to_xml() 'gem install activesupport' use the 2.3 branch
require 'json' #part of ruby 1.9 but otherwise 'gem install json'
my_json = "{\"test\":\"b\"}"
my_xml = JSON.parse(my_json).to_xml(:root => :my_root)
इसके अलावा to_xml की जड़ तर्क ध्यान दें। यदि आप रूट निर्दिष्ट नहीं करते हैं तो यह उस शब्द के रूप में 'हैश' शब्द का उपयोग करेगा जो देखने के लिए बहुत अच्छा नहीं है।
का पठन स्तर के लिए अलग मॉड्यूल में ActiveSupport moved its components:
क्या मुझे 'active_support' के लिए कुछ मणि चाहिए? जब मुझे इसकी आवश्यकता होती है तो मुझे एक त्रुटि मिल रही है। –
हां। सक्रिय समर्थन रेल पर रूबी का हिस्सा है। आपको इसे 'मणि इंस्टॉल एक्टिव्सपोर्ट' – rwilliams
के साथ इंस्टॉल करने में सक्षम होना चाहिए, जब भी मैं इसे चलाने का प्रयास करता हूं, मुझे निम्न त्रुटि मिलती है: #
मुझे ऐसा करने के लिए एक जादू रत्न नहीं पता है, लेकिन आप आसानी से क्या कर सकते हैं हैश और हैश से जेसन।
require 'active_support'
my_hash = Hash.from_xml(my_xml)
तो
require 'json'
my_json = my_hash.to_json
मैं जेएसओएन को एक्सएमएल में बदलने की कोशिश कर रहा हूं, एक्सएमएल नहीं JSON –
क्या वे अजीब उद्धरण काम करने जा रहे हैं, वैसे भी? यह बहुत स्वस्थ नहीं दिखता है। – jwueller
@elusive: हाँ, वे भी मेरे लिए मज़ाकिया लग रहे हैं। मुझे लगता है कि वे स्मार्ट उद्धरण हैं। –
। सब कुछ एक बार में लोड करने के बजाय, हम इसे केवल कुछ सबसेट लोड करने के लिए कह सकते हैं, या, अगर हम अभी भी चुनते हैं, तो हम सब कुछ एक साथ लोड कर सकते हैं। कोई फर्क नहीं पड़ता कि हम require 'activesupport'
का उपयोग नहीं कर सकते जैसे कि हम करते थे, इसके बजाय हमें require 'activesupport/all'
या सबसेट्स का उपयोग करना होगा।
>> require 'active_support/all' #=> true
>> json = {'foo'=>'bar'}.to_json #=> "{"foo":"bar"}"
>> ActiveSupport::JSON.decode(json).to_xml #=> "<?xml version="1.0" encoding="UTF-8"?>\n<hash>\n <foo>bar</foo>\n</hash>\n"
XML और JSON रूपांतरण में पहली पंक्ति भार:
>> require 'active_support/core_ext/array/conversions' #=> true
>> [{:a => 1, :b => 2}, {:c => 3}].to_xml
=> "<?xml version="1.0" encoding="UTF-8"?>\n<objects type="array">\n <objects a="1" b="2" type="hash"/>\n <objects c="3" type="hash"/>\n</objects>\n"
इसके अलावा, ActiveSupport ताकि आप एआर के साथ पूरे रूपांतरण कर सकते हैं, JSON समर्थन शामिल है। दूसरी पंक्ति परीक्षण के लिए उपयोग करने के लिए एक JSON नमूना सेट अप करती है। तीसरी पंक्ति ने जेएसओएन का पर्दाफाश किया, इसे डीकोड किया, फिर इसे एक्सएमएल में बदल दिया।
अन्य उत्तरों सरल रिकर्सिव रूपांतरणों की अनुमति नहीं देते हैं। जैसा कि this answer on Code Review में बताया गया है, आपको सरल प्रारूप बनाने के लिए कस्टम हेल्पर की आवश्यकता होगी।
यह इस बदल जाएगी ...
data = [
{ 'name' => 'category1',
'subCategory' => [
{ 'name' => 'subCategory1',
'product' => [
{ 'name' => 'productName1',
'desc' => 'desc1' },
{ 'name' => 'productName2',
'desc' => 'desc2' } ]
} ]
},
{ 'name' => 'category2',
'subCategory' => [
{ 'name' => 'subCategory2.1',
'product' => [
{ 'name' => 'productName2.1.1',
'desc' => 'desc1' },
{ 'name' => 'productName2.1.2',
'desc' => 'desc2' } ]
} ]
},
]
... इस में:
<?xml version="1.0"?>
<root>
<category>
<name>category1</name>
<subCategory>
<name>subCategory1</name>
<product>
<name>productName1</name>
<desc>desc1</desc>
</product>
<product>
<name>productName2</name>
<desc>desc2</desc>
</product>
</subCategory>
</category>
<category>
<name>category2</name>
<subCategory>
<name>subCategory2.1</name>
<product>
<name>productName2.1.1</name>
<desc>desc1</desc>
</product>
<product>
<name>productName2.1.2</name>
<desc>desc2</desc>
</product>
</subCategory>
</category>
</root>
- 1. मैं डेटाटेबल को सी # में एक एक्सएमएल फ़ाइल में कैसे परिवर्तित कर सकता हूं?
- 2. क्या मैं जेएसओएन में आरएसएस की सेवा कर सकता हूं?
- 3. मैं एनएसडीएटा को एनएसएआरएआरए में कैसे परिवर्तित कर सकता हूं?
- 4. मैं 'System.Windows.Input.Key' को 'System.Windows.Forms.Keys' में कैसे परिवर्तित कर सकता हूं?
- 5. मैं HTML को वस्त्र में कैसे परिवर्तित कर सकता हूं?
- 6. मैं FBProfilePictureView को UIImage में कैसे परिवर्तित कर सकता हूं?
- 7. मैं NSMutableArray को NSString में कैसे परिवर्तित कर सकता हूं?
- 8. मैं रूबी में अग्रणी शून्य कैसे आउटपुट कर सकता हूं?
- 9. मैं एक्सएमएल में सभी नेमस्पेस कैसे सूचीबद्ध कर सकता हूं?
- 10. मैं qml में बाइनरी कोड को पीएनजी छवि में कैसे परिवर्तित कर सकता हूं?
- 11. मैं पर्ल में वाईएएमएल को एक्सएमएल में कैसे परिवर्तित करूं?
- 12. बिट्स को बाइट्स में कैसे परिवर्तित कर सकता हूं?
- 13. मैं एक्सएमएल से जेसन को कैसे परिवर्तित कर सकता हूं और सी #
- 14. मैं xml फ़ाइल को पायथन का उपयोग करके JSON में कैसे परिवर्तित कर सकता हूं?
- 15. रुबी: मैं डेटा की सरणी को हैश और जेसन प्रारूप में कैसे परिवर्तित कर सकता हूं?
- 16. मैं पैंडस डेटाफ्रेम में मानों को कैसे अलग कर सकता हूं और बाइनरी मैट्रिक्स में परिवर्तित कर सकता हूं?
- 17. रूबी में ब्लॉक को परिभाषित/नाम कैसे कर सकता हूं?
- 18. मैं रूबी में बड़ी फ़ाइलों को कैसे संभाल सकता हूं?
- 19. मैं रूबी को लुआ में कैसे बदल सकता हूं?
- 20. रूबी पर रूबी में अनुरोधों पर क्वेरीस्ट्रिंग मानों को मैं कैसे संरक्षित कर सकता हूं?
- 21. मैं रुबी को जावास्क्रिप्ट में कैसे संकलित कर सकता हूं?
- 22. मैं VB.NET में एक्सएमएल अक्षरों में XElements को कैसे एम्बेड कर सकता हूं?
- 23. मैं एक सिंगलटन को एकता, एक्सएमएल कॉन्फ़िगरेशन में विभिन्न इंटरफेस में कैसे पंजीकृत कर सकता हूं?
- 24. मैं हेक्साडेसिमल संख्या को C++ में बाइनरी में कैसे परिवर्तित कर सकता हूं?
- 25. मैं एक इंटीजर को जावा में स्थानीयकृत महीने के नाम में कैसे परिवर्तित कर सकता हूं?
- 26. मैं एक आईएस 8686 टाइमस्टैम्प को पर्ल में यूनिक्स समय में कैसे परिवर्तित कर सकता हूं?
- 27. मैं आरजीबी हेक्स स्ट्रिंग को यूआईसीओलर में उद्देश्य-सी में कैसे परिवर्तित कर सकता हूं?
- 28. मैं एक चरित्र को पायथन, और उपाध्यक्ष में एक पूर्णांक में कैसे परिवर्तित कर सकता हूं?
- 29. मैं पर्ल में एक स्ट्रिंग को एक नंबर में कैसे परिवर्तित कर सकता हूं?
- 30. मैं सूची <object> को सी # में हैशटेबल में कैसे परिवर्तित कर सकता हूं?
मैं 'activesupport' टैग जोड़ा और एक प्रश्न में अपने शीर्षक बदल गया। –