यहाँ मैं कैसे 'है डी समस्या से संपर्क करें। यह कोड प्रारंभ में एक समय में पढ़ने के लिए लाइनों की संख्या सेट करता है, फिर फ़ाइल को पढ़ने और एक सरणी सेट करने के लिए खोलता है। जबकि हम फ़ाइल को पढ़ना समाप्त नहीं कर रहे हैं, हम इसे myArray
पर एक लाइन जोड़ते हैं।
जब हमने 20 लाइनों में से कई को पढ़ा, तो हम इसकी रिपोर्ट करते हैं और जो कुछ भी हमें 20 लाइनों के साथ करना है (मेरे मामले में, मैंने उन्हें स्क्रीन पर प्रतिबिंबित किया है, अर्धविराम से अलग किया है)।
फिर हम फिर से रिक्त होने के लिए सरणी को रीसेट करते हैं और सभी फ़ाइल पढ़े जाने तक दोहराते हैं, फिर लाइनों के अंतिम बैच को आउटपुट करते हैं (अन्यथा उन्हें अनदेखा कर दिया जाएगा क्योंकि हम उदाहरण में 20 के बैचों के साथ कुछ भी करते हैं)।
Option Explicit
Const LINES_TO_READ = 20
Dim iLines, iTotalLines
Dim oFso : Set oFso = CreateObject("Scripting.FileSystemObject")
Dim oFile : Set oFile = oFso.OpenTextFile("C:\temp\mytextfile.txt", 1)
Dim myArray()
ReDim myArray(0)
iLines = 0
iTotalLines = 0
While Not oFile.AtEndOfStream
myArray(UBound(myArray)) = oFile.ReadLine
iLines = iLines + 1
ReDim Preserve myArray(UBound(myArray)+1)
If iLines Mod LINES_TO_READ = 0 Then
WScript.Echo iLines & " read now."
' do anything you like with the elements of myArray here before we reset it to empty
WScript.Echo Join(myArray, ";")
' reset array to be totally empty again
ReDim myArray(0)
End If
Wend
WScript.Echo "Final Lines: " & Join(myArray, ";")
WScript.Echo "Total lines in file: " & iLines
आप आवश्यक फाइलों को स्ट्रीम करने से बेहतर होगा, फिर पूरी फ़ाइल को स्मृति में लोड करना बेहतर होगा। – Lankymart
ठीक है ... मैं पाठ फ़ाइल की पहली 20 पंक्तियों को पढ़ने में सक्षम हूं। मुझे अगले 20 लाइनों के लिए कैसे जाना चाहिए और इसलिए फ़ाइल समाप्त होने तक ..... मुझे इसे 'Mod' +1 के उपयोग के लिए –