Kuidas lugeda teksti faili kasutades System.IO ja Visual C#

NB! Artikkel on tõlgitud Microsofti masintõlketarkvaraga ja seda saab parandada Kogukonnapõhise tõlkeraamistiku (CTF) tehnoloogiaga. Microsoft pakub masintõlgitud, kogukonna järeltöödeldud ja inimtõlgitud artikleid, et anda mitmekeelne juurdepääs kõigile meie teabebaasi artiklitele. Masintõlgitud ja järeltöödeldud artiklites võib olla sõnavara-, süntaksi- ja/või grammatikavigu. Microsoft ei vastuta mingite ebatäpsuste, tõrgete ega kahjude eest, mis on tulenenud sisu valest tõlkest või selle kasutamisest meie klientide poolt. Lisateavet CTF-i kohta leiate aadressilt http://support.microsoft.com/gp/machine-translation-corrections/et.

Artikli ingliskeelse versiooni kuvamiseks klõpsake siin: 306777
Selle artikli Microsoft Visual Basic .net-i jaoks leiate artiklinumbriga 302309.

See artikkel osutab järgmisi Microsoft .NET raamistiku klassi Raamatukogu nimeruume:
  • System.IO
  • System.Collections
Kokkuvõte
Käesolevas juhendavas artiklis näitab teile, kuidas tooma teavet tekstifaili (.txt), ja seejärel kasutage loendit ArrayList klassi kasutajale kõnealuse teabe kuvamiseks.

Nõuded

Microsoft Visual C#

Lugemine tekstifailidest ja Visual C#

Avamine ja lugemine failide lugemiseks on oluline osa sisend/väljund (IO) funktsionaalsus, isegi siis, kui sa pead kõnealuse faili kirjutada. See näide avab faili lugemine, mis on kasulik lugemine tekstifailidest kuid sobimatu binaarfailidena. See näide kasutab üks paljudest meetoditest, mida on saadaval fail avada.

Kuigi paljud andmestruktuurid on saadaval teavet, mida on välja otsitud faili salvestada, on loendit ArrayList klassi kasutada lihtsamaid struktuur. Avada ja lugeda failist, näites kasutatakse objektide System.IO nimeruumi, konkreetselt System.IO.StreamReader klassi.

Märkus See proov nõuab mingil kujul tekstifaili (.txt) vormingus, kust lugeda.

Laadimiseks ja Loe läbi tekst faili alates Visual C#, toimige järgmiselt.
  1. Käivitage Microsoft Visual Studio.
  2. Loo uus konsool rakendus ja Visual C#. Visual Studio loob Staatilise klassi teile, koos tühi Main() menetlust.
  3. Veenduge, et projekti viitaks vähemalt System nimeruumile. Kasutage kasutades lauset süsteem, System.IOja System.Collections nimeruume, nii, et sa ei pea saada saadud nende nimeruumidega hiljem tuumaklassi oma koodis. Need avaldused enne mis tahes muud tollideklaratsioonid tuleb teil kasutada.
    using System;using System.IO;using System.Collections;					
  4. Avate faili lugemiseks, luua StreamReader objekti uus eksemplar ja lähevad selle faili tee ehitaja järgmiselt:
    StreamReader objReader = new StreamReader("c:\\test.txt");					
  5. Sul peab olema stringi muutuja, kus soovite talletada iga rida faili, kui sa protsessi käigus. Sest siis tuleb lisada nende ridade loendit ArrayList, deklareerida ja luua seda tüüpi objekti ka.
    string sLine="";ArrayList arrText = new ArrayList();					
  6. Seal on mitmeid viise, kuidas lugeda faili, sealhulgas ReadToEnd meetodi, mis kõlab kogu faili korraga. Siiski, näiteks, saate ReadLine meetod tuua faili üks rida korraga. Kui faili lõppu jõudnud, see meetod tagastab null, mis võimaldab teil end oma loop. Nagu te lugeda iga rea faili, saate loendit ArrayList lisamismeetodit ridade lisamiseks oma loendit ArrayList klassi.
    while (sLine != null){	sLine = objReader.ReadLine();	if (sLine != null)		arrText.Add(sLine);}objReader.Close();					
  7. Iga ahela abil saate kirjutada oma äsja täidetud loendit ArrayList sisu konsooli järgmiselt:
    foreach (string sOutput in arrText)	Console.WriteLine(sOutput);Console.ReadLine();					
  8. Salvesta ja Käivita oma kood, mis toodab nimekiri konsooli faili.

Täieliku koodi nimekirja

using System;using System.IO;using System.Collections;namespace TextFileReader_csharp{	/// <summary>	/// Summary description for Class1.	/// </summary>	class Class1	{		static void Main(string[] args)		{			StreamReader objReader = new StreamReader("c:\\test.txt");			string sLine="";			ArrayList arrText = new ArrayList();			while (sLine != null)			{				sLine = objReader.ReadLine();				if (sLine != null)					arrText.Add(sLine);			}                        objReader.Close();			foreach (string sOutput in arrText)				Console.WriteLine(sOutput);			Console.ReadLine();		}	}}				

Tõrkeotsing

Seal on mitmeid asju, mida olema teadlikud kui töötate faili I/O, sealhulgas järgmist:
  • Iga kord, kui teil on juurdepääs faili, on olemas võimalus, et fail, mida proovite lugeda või kirjutada ei tohi süsteemi või võib kasutada.
  • Näiteks loeb kogu faili mällu, enne kui ta töötleb faili. Võib tekkida olukord, kus fail on liiga suur, mis toimub mälu või pole teil faili juurdepääsu õigust.
Mõni neist olukordadest põhjustada erand tuleb tõsta. See on alati hea tava anda proovida... saagi plokk neid ühiseid teemasid käsitleda.
Proovige-saak

Hoiatus. See artikkel on masintõlgitud.

Vlastnosti

ID článku: 306777 - Poslední kontrola: 06/07/2013 01:04:00 - Revize: 1.0

Microsoft Visual C# 2005, Microsoft Visual C# .NET 2002 Standard Edition, Microsoft Visual C# 2008 Express Edition

  • kbcollections kbhowtomaster kbio kbmt KB306777 KbMtet
Váš názor