2013-12-09 5 views
5

मैं यह पता लगाने की कोशिश कर रहा हूं कि XmlReader से फ़ाइल आकार की गणना करने का कोई तरीका है या नहीं। मुझे पाठक ऑब्जेक्ट पर कुछ भी दिखाई नहीं देता है जो आकार निर्धारित करने में मदद करता है। कोई विचार? धन्यवाद!क्या यह एक्सएमएलआरडर में लोड होने पर एक्सएमएल के आकार की गणना करना संभव है?

Using reader As Xml.XmlReader = GetXML(columnName.ToString()) 

End Using 
+1

आकार पता करने के लिए की आवश्यकता होगी, के लिए अपने कारण क्या है? इससे कामकाज खोजने में मदद मिल सकती है। –

+0

यह किसी उद्देश्य के लिए उपयोगकर्ता को प्रदर्शित करने के लिए है। – Jyina

उत्तर

4

XmlReader कुछ एक ज्ञात या निश्चित आकार की है कि से नहीं पढ़ सकता है। आपकी सर्वश्रेष्ठ शर्त कुछ भी XmlReader पढ़ने के स्रोत के साथ कुछ करना होगा। जैसे आपके पास Stream हो सकता है और Stream.Length प्राप्त करने का प्रयास करें (कुछ धाराएं इसका समर्थन नहीं करती हैं, क्योंकि उनके पास लंबाई नहीं है)। इसके लिए GetXML संशोधित करने की आवश्यकता होगी।

+0

इसके अलावा, सभी धाराओं की लंबाई नहीं है। –

+0

@ जॉन सैंडर्स अच्छा बिंदु। दस्तावेज़ीकरण से पता चलता है कि 'लंबाई' फेंक सकती है, लेकिन यह ध्यान में रखना अच्छा है कि मेरे उत्तर में। –

1

आप अपने स्रोत के रूप में XmlReader का उपयोग करना चाहिए, तो यह आपके फ़ाइल आकार के करीब (ग #) मिलना चाहिए:

int sizeInBytes = Encoding.ASCII.GetBytes(reader.ReadOuterXml()).Length; 
+0

हां, मुझे XmlReader का उपयोग करना होगा। धन्यवाद। मुझे इसे आज़माना है। – Jyina

संबंधित मुद्दे

 संबंधित मुद्दे