लिखने का सबसे तेज़ तरीका क्या है मुझे अक्सर XML फ़ाइलों को बनाने की आवश्यकता है और मैं नौकरी करने के लिए XmlWrite चुनता हूं, मैंने पाया कि इसे WriteAttributeString (मुझे कुछ मामलों में बहुत सारे गुण लिखने की आवश्यकता है) पर अधिक समय बिताया है, मेरा प्रश्न है क्या एक्सएमएल फाइलें बनाने के लिए कुछ बेहतर तरीका है? अग्रिम में धन्यवाद।XML
XML
उत्तर
इसे सीधे एक फ़ाइल में लिखें उदाहरण के लिए FileStream
(मैन्युअल रूप से बनाए गए कोड के माध्यम से)। इसे बहुत तेज बनाया जा सकता है, लेकिन इसे बनाए रखने के लिए भी बहुत मुश्किल है। हमेशा के रूप में, अनुकूलन एक पुरस्कार टैग के साथ आता है।
इसके अलावा, "premature optimization is the root of all evil" को न भूलें।
आप केवल वर्गों आप को क्रमानुसार करना चाहते हैं के पदानुक्रम परिभाषित करने के लिए है, वह सब है। इसके अतिरिक्त आप अपनी संपत्तियों पर लागू कुछ विशेषताओं के माध्यम से स्कीमा को नियंत्रित कर सकते हैं।
गुमनाम प्रकार का उपयोग करना और XML के लिए serializing mentioned here के रूप में एक दिलचस्प दृष्टिकोण है
सबसे तेजी से रास्ता है कि मैं जानता हूँ कि है दो एक सादे स्ट्रिंग के रूप में दस्तावेज़ संरचना लिख सकते हैं और एक XDocument वस्तु में उसे पार्स:
string str =
@"<?xml version=""1.0""?>
<!-- comment at the root level -->
<Root>
<Child>Content</Child>
</Root>";
XDocument doc = XDocument.Parse(str);
Console.WriteLine(doc);
अब आपके पास एक संरचित और XDocument ऑब्जेक्ट का उपयोग करने के लिए तैयार होगा जहां आप अपने डेटा के साथ पॉप्युलेट कर सकते हैं। साथ ही, आप पूरी तरह से संरचित और आबादी वाले एक्सएमएल को स्ट्रिंग के रूप में भी पार्स कर सकते हैं और वहां से शुरू कर सकते हैं। इसके अलावा, आप हमेशा इस तरह से संरचित XElements उपयोग कर सकते हैं:
XElement doc =
new XElement("Inventory",
new XElement("Car", new XAttribute("ID", "1000"),
new XElement("PetName", "Jimbo"),
new XElement("Color", "Red"),
new XElement("Make", "Ford")
)
);
doc.Save("InventoryWithLINQ.xml");
कौन सा उत्पन्न करेगा:
<Inventory>
<Car ID="1000">
<PetName>Jimbo</PetName>
<Color>Red</Color>
<Make>Ford</Make>
</Car>
</Inventory>
मुझे यह कुशल नहीं लगता है क्योंकि आप रनटाइम तक संरचना गलतियों और टाइपों का पता नहीं लगा सकते हैं। – Antoine
फिर आप नमूना में संरचित XElement ऑब्जेक्ट्स का उपयोग कर सकते हैं। –
कितना ज्यादा समय है ... यह है 10 एमएस, 10 सेकंड या 10 मिनट ... और एक्सएमएल लिखने वाली पूरी प्रक्रिया कितनी है?
यह नहीं कह रहा कि आपको अनुकूलित नहीं करना चाहिए, लेकिन यह एक बात है कि आप कितनी बार प्रक्रिया को थोड़ा सा अनुकूलित करना चाहते हैं। अंत में जितनी तेजी से आप जाना चाहते हैं, उतना ही जटिल होगा कि इस मामले में (व्यक्तिगत राय) बनाए रखा जाए।
मैं व्यक्तिगत रूप से XmlDocument
प्रकार का उपयोग करना पसंद करता हूं। नोड्स लिखते समय यह अभी भी थोड़ा भारी है लेकिन गुण एक-लाइनर हैं, और एक्सएमएलराइट का उपयोग करके सभी तरह से सरल है।
- 1. xml
- 2. xml
- 3. XML
- 4. xml
- 5. XML
- 6. xml
- 7. xml
- 8. xml
- 9. xml
- 10. xml
- 11. xml
- 12. xml
- 13. xml
- 14. xml
- 15. xml
- 16. स्टोर xml के अंदर xml
- 17. svn log --xml अमान्य xml
- 18. xml पुल पार्सर संपत्ति xml
- 19. सरल xml
- 20. xml मान
- 21. XML स्कीमा
- 22. xml फ़ाइल
- 23. मैं xml
- 24. xml संदेश
- 25. पायथन: XML
- 26. एंड्रॉइड - xml
- 27. लेआउट xml
- 28. मैं xml
- 29. एंड्रॉइड: xml
- 30. XML पथ
क्या आप एक्सएमएल सीरियलाइजेशन के बारे में जानते हैं? एक प्रकार को तत्काल करें, गुणों को भरें, फिर ऑब्जेक्ट की स्थिति का प्रतिनिधित्व करने वाले XML दस्तावेज़ बनाने के लिए इसे क्रमबद्ध करें। – Cheeso
आप सही रास्ते पर हैं। XML लिखने का सबसे तेज़ तरीका XmlWriter है। – adatapost
"तेज़" परिभाषित करें। निष्पादित करने के लिए लिखने/डीबग या तेज करने के लिए तेज़? जवाब अलग होगा। –