Kaip skaityti tekstinį failą naudodami System.IO 2005 m. Visual Basic ar Visual Basic .NET

SVARBU: šis straipsnis išverstas naudojant „Microsoft“ mašininio vertimo programinę įrangą ir gali būti pataisytas naudojant „Community Translation Framework“ (CTF) technologiją. „Microsoft“ siūlo mašinos išverstus ir po to bendruomenės suredaguotus straipsnius, taip pat žmogaus išverstus straipsnius siekdama suteikti prieigą prie visų savo žinių bazės straipsnių daugeliu kalbų. Mašinos išverstuose ir vėliau paredaguotuose straipsniuose gali būti žodyno, sintaksės ir / arba gramatikos klaidų. „Microsoft“ neatsako už jokius netikslumus, klaidas arba žalą, patirtą dėl neteisingo turinio vertimo arba mūsų klientų naudojimosi juo. Daugiau apie CTF žr. http://support.microsoft.com/gp/machine-translation-corrections.

Spustelėkite čia, norėdami pamatyti šio straipsnio versiją anglų kalba: 302309
Šio straipsnio versija Microsoft Visual C# .NET, ieškokite 306777.
Microsoft Visual Basic 6.0 versijos Šis straipsnis, žr. 183638.
Santrauka
Šis straipsnis parodo, kaip nuskaityti informaciją iš tekstinį failą ir naudoti ArrayList, skirto klasės nerodyti šios informacijos vartotojui.

Skaityti tekstinius failus 2005 m. Visual Basic ar Visual Basic .NET

Atidaryti ir skaityti failus skaityti yra svarbi įvesties/išvesties (IO) funkcionalumo, net jei jums nereikia įrašyti į failą į klausimą. Šiame pavyzdyje atidaromas svarstymą, kuris yra naudinga teksto failą failus bet netinka už dvejetainius failus. Šis pavyzdys naudoja vieną iš daugelio metodai, kuriuos galima atidaryti failą. Nors daugelis duomenų struktūros būtų galima saugoti informaciją, kuri yra gauta iš failo, ArrayList, skirto klasės tai lengviausias konstrukcija naudoti. Atidaryti ir skaityti iš to failą, šiame pavyzdyje objektus iš System.IO vardų, specialiai System.IO.StreamReader klasės.

Pastaba Šis mėginys reikalauja tam tikros formos teksto (.txt) failo iš kurių skaityti.

Jei norite įkelti ir skaityti tekstinį failą iš Microsoft Visual Basic 2005 arba Microsoft Visual Basic .NET, atlikite šiuos veiksmus:
  1. Paleisti Microsoft Visual Studio 2005 arba Microsoft Visual Studio .NET. Kurti naują konsolę programą Visual Basic. Visual Studio sukuria modulis jums, kartu su tuščia Main() procedūrą.
  2. Įsitikinkite, kad projekto nuorodos bent sistemos vardų. Naudoti pareiškimo importosistema, System.IOir System.Collections vardų, jums nereikia gauti deklaracijomis šių vardų vėliau savo kode. Turite naudoti šiuos teiginius prieš bet kitas deklaracijas.
    Imports SystemImports System.IOImports System.Collections					
  3. Atidaryti failą, skaityti, kurti naują egzempliorių StreamReader objekto ir perduoti failo kelias į konstruktorius taip:
    Dim objReader As New StreamReader("c:\test.txt")					
  4. Jums reikės Styga kintamojo, kuriame norite saugoti kiekvieną eilutę kaip jums procesas failo. Nes jums bus pridėti šias eilutes, ArrayList, skirto, paskelbti ir sukurti objekto tipo taip pat.
    Dim sLine As String = ""Dim arrText As New ArrayList()					
  5. Yra keletas būdų, kaip skaityti failą, įskaitant ReadToEnd metodas, kuris nuskaito visą failą vienu metu. Vis dėlto už tai pavyzdžiui, galite naudoti ReadLine metodas, kad failą vienoje linijoje vienu metu. Kai pabaigoje failas pasiekiamas, šis metodas grąžina "Nieko", kuri leidžia būdu baigti savo linijos. Kaip jūs skaitote kiekvieną eilutę iš failo, galite pridėti metodas ArrayList, skirto įterpti eilutes į jūsų ArrayList, skirto klasės.
    Do    sLine = objReader.ReadLine()    If Not sLine Is Nothing Then        arrText.Add(sLine)    End IfLoop Until sLine Is NothingobjReader.Close()					
  6. Naudoti "Kiekvienam" kilpa rašyti turinį savo naujai užpildyti ArrayList, skirto į konsolę taip:
    For Each sLine In arrText    Console.WriteLine(sLine)NextConsole.ReadLine()					
  7. Įrašyti ir paleisti savo kodą, kuris sukuria sąrašą savo failo į konsolę.

Užbaigti kodą sąrašą

Imports SystemImports System.IOImports System.CollectionsModule Module1    Sub Main()        Dim objReader As New StreamReader("c:\test.txt")        Dim sLine As String = ""        Dim arrText As New ArrayList()        Do            sLine = objReader.ReadLine()            If Not sLine Is Nothing Then                arrText.Add(sLine)            End If        Loop Until sLine Is Nothing        objReader.Close()        For Each sLine In arrText            Console.WriteLine(sLine)        Next        Console.ReadLine()    End SubEnd Module				

Spąstus

Yra keletas dalykų, kuriuos reikia žinoti, kai dirbate su failu I/o, įskaitant šiuos elementus:
  • Bet kada galite prieiti prie failo, yra galimybė, kad failas, kurį bandote skaityti ar rašyti negali būti sistemos ar gegužės būti naudojamas.
  • Šiame pavyzdyje skaito visą failą į atminties prieš jį procesų failą. Galite susidurti su situacija, kurioje failas yra per didelis vyks atmintyje, arba galbūt neturite prieigos teisių į failą.
Visų šių situacijų sukelti išimtis pakilti. Tai visada geros praktikos teikti pabandyti... sugavimo bloką tvarkyti šių bendrų klausimų.
pabandyti sugauti VB

Įspėjimas: šis straipsnis išverstas automatiškai

Savybės

Straipsnio ID: 302309 – Paskutinė peržiūra: 06/20/2013 04:26:00 – Peržiūra: 1.0

Microsoft Visual Basic 2005, Microsoft Visual Basic .NET 2003 Standard Edition, Microsoft Visual Basic .NET 2002 Standard Edition

  • kbvs2005applies kbvs2005swept kbhowtomaster kbmt KB302309 KbMtlt
Atsiliepimai