2012-06-20 7 views
5

मैं एक फ़ाइल मैं यहाँ (stackoverflow) में पाया गया की लाइनों की संख्या को पढ़ने के लिए है कि सबसे अच्छा तरीका है एक बड़ी फ़ाइल में लाइनों की संख्या को पढ़ने के लिए कोशिश कर रहा हूँ निम्नलिखित कोड का उपयोग करना है , मैं इसे संकलित नहीं कर सकता। क्या कोई जानता है कि समस्या क्या है?कोई System.IO.File.ReadLines (फ़ाइल) .उंट() .Net 4 में?</p> <pre><code>int count = System.IO.File.ReadLines(file).Count(); </code></pre> <p>हालांकि:

त्रुटि 5 'System.Collections.Generic.IEnumerable<string>' नहीं है पाया जा सकता है 'गणना' और कोई विस्तार विधि 'गणना' प्रकार 'System.Collections.Generic.IEnumerable<string>' के पहले तर्क को स्वीकार करने के लिए एक परिभाषा होते हैं ( आप एक का उपयोग कर के निर्देश या एक विधानसभा संदर्भ याद आ रही हैं ?)

धन्यवाद, ईयाल

+4

आप लाइन 'System.Linq का उपयोग कर है; फ़ाइल के शीर्ष पर'? – dlev

+0

आपको 'foreach' AFAIK का उपयोग करना होगा। –

+0

@dlev - वह समस्या थी। मैंने 'system.linq' का उपयोग करके जोड़ा और अब यह ठीक है। धन्यवाद – Eyalk

उत्तर

12

Count<T>()IEnumerable<T> की वस्तुओं के लिए एक विस्तार विधि है। नामस्थान System.Linq के लिए using कथन जोड़ने का प्रयास करें।

+0

धन्यवाद। यह समस्या को हल करता है – Eyalk

3

तुम क्या कर सकते हैं:

int count = File.ReadAllLines(@"C:\filepath\file.txt").Length; 

संपादित करें: टिप्पणियों में बताया गया है, यह बड़ी फ़ाइलों के लिए बुरी तरह प्रदर्शन करेगा (करेंगे)। अधिक विस्तृत स्पष्टीकरण के साथ एक समान प्रश्न के लिए, Determine the number of lines within a text file

+2

"** बड़ी फ़ाइल ** में लाइनों की संख्या पढ़ें **" यदि आपने 'रीडअलाइनलाइन' की है तो इसे पूरी फ़ाइल को अस्थायी रूप से राम में संग्रहीत करने की आवश्यकता होगी। 'रीडलाइन' को केवल वर्तमान लाइन को स्टोर करने की आवश्यकता है। –

+0

अच्छा बिंदु। एक बड़ी फाइल के लिए यह बहुत अक्षम होगा। मैंने एक ही प्रश्न के लिंक पर अपना जवाब अपडेट कर दिया है। – psych

0

इस पाठ फ़ाइल से पढ़ने में खिड़की आवेदन से लाइन के लिए गिनती है:

int linecount = System.IO.File.ReadAllLines(@"D:\yfile.txt").Length; 
MessageBox.Show(linecount != null && (!string.IsNullOrEmpty(linecount.ToString())) ? linecount.ToString() : "Unable To Count"); 
+1

यह टेक्स्ट फ़ाइल से पढ़ने में विंडो अनुप्रयोग से लाइन के लिए गिनती है – hog

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