पर कोई रूपांतरण (जावा कोड उदाहरणों के साथ, यदि संभव हो) फ्लाई पर, इनपुट JSON
पर इनपुट करने के लिए कोई वास्तविक तरीका है, वास्तविक सामग्री और XML स्रोत की संरचना के बिना, फ़ाइल, स्ट्रिंग, आदि)?XML से JSON
कहें, उदाहरण के लिए, अज्ञात संरचना और एकाधिक घोंसले के स्तर के साथ एक बहुत बड़ा एक्सएमएल डेटासेट है, जो एक बड़ी टेक्स्ट फ़ाइल में संग्रहीत है। स्मृति में सबकुछ पढ़ना संभव नहीं है (अंतरिक्ष की कमी के लिए) और वे इसे JSON
में सीधे रूपांतरित करना चाहते हैं, यानी, स्टैक्स टैग का पता लगाने और संभालने के लिए कोई कोड लिखने के बिना (उदा। START_ELEMENT
, CHARACTERS
, END_ELEMENT
)।
आदर्श समाधान एक Reader
या InputStream
कनवर्टर से प्राप्त करने के लिए, ताकि, उदाहरण के लिए, एक एक्सएमएल फ़ाइल की आपूर्ति और Reader
या InputStream
पैदा करता JSON
, एक करने के लिए सीधे एक FileOutputStream को खिलाया जा करने के लिए, या यहाँ तक होगा JSON
पार्सर Jackson
की तरह। यदि यह संभव नहीं है, कम से कम एक XML फ़ाइल को पढ़ने का एक तरीका, जेएसओएन में कनवर्ट करना और दूसरी फ़ाइल में लिखना एक स्वीकार्य समझौता होगा।
उपकरण है कि/से XML/JSON में परिवर्तित करने के लिए इस्तेमाल किया जा सकता है (जैसे, StaxON, JSON-lib, Jettison, XStream) है कि लेकिन एक ज्ञात संरचना का केवल रूपांतरण करने के लिए नहीं है।
संपादित करें:, एक Reader
या InputStream
एक OutputStream या एक लेखक (जो भी "रूपांतरण" कवर मैं ऊपर के बारे में कहा जाएगा), कई तरीकों से किया जा सकता है से हो रही है, हालांकि अच्छे परिणाम के लिए और "अनंत "इनपुट आकार multithreading शामिल है। इस article in Ostermiller.org में समाधानों का वर्णन किया गया है और इसी तरह के कार्यान्वयन IO-Tools library में पाया जा सकता है।
यह प्रदान करता है (या मानक आउटपुट में) समाधान "फ़ाइल लिखना"। उत्तर और अतिरिक्त प्रयास के लिए धन्यवाद! – PNS
आप इस के साथ टिप्पणी टैग कैसे अनदेखा करते हैं? Xml में टिप्पणी टैग होने पर XMLEventWriter अपवाद फेंकता है। – ShaggyInjun
@ShaggyInjun: यह अपना स्वयं का प्रश्न होना चाहिए, नमूना कोड के साथ पूरा होना चाहिए, 1.5 वर्षीय उत्तर पर कोई टिप्पणी नहीं। –