Šiuo metu esate neprisijungę, laukiama, kol iš naujo prisijungsite prie interneto

Kaip skaityti tekstinį failą naudodami System.IO ir Visual C#

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.

306777
Microsoft Visual Basic .NET versijos Šis straipsnis, žr. 302309.

Šis straipsnis nurodo šiuos Microsoft .NET sistemoje Class Library vardų:
  • System.IO
  • System.Collections
Santrauka
Šiame nuosekliame straipsnyje aprašoma, kaip nuskaityti informacija iš teksto rinkmenos (.txt), ir tada naudoti ArrayList, skirto klasės nerodyti šios informacijos vartotojui.

Reikalavimai

Microsoft Visual C#

Skaityti tekstinius failus į Visual C#

Atidaryti ir skaityti failus skaityti yra svarbi įvesties/išvesties (IO) funkcionalumo, net jei jums nereikia rašyti su nagrinėjama byla. Šiame pavyzdyje atidaromas failo svarstymą, kuris yra naudingas skaitant tekstinius failus, bet netinka dvejetainius failus. Šiame pavyzdyje vienas iš būdų, kuriuos galima atidaryti failą.

Nors daugelis duomenų struktūros yra saugoti informaciją, kuri yra gauta iš failo, ArrayList, skirto klasės tai lengviausias konstrukcija naudoti. Norėdami atidaryti ir skaityti iš failo, š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.

Įkelti ir perskaityti teksto failą iš Visual C#, atlikite šiuos veiksmus:
  1. Paleisti Microsoft Visual Studio.
  2. Kurti naują konsolės programą, Visual C#. Visual Studio sukuria Statinis klasės jums, kartu su tuščia Main() procedūrą.
  3. Patikrinkite, ar kad projekto nuorodos bent sistemos vardų. Naudojant sakinį naudokite dėl sistemos, System.IOir System.Collections vardų, kad jums nereikia gauti deklaracijų iš šių vardų vëliau savo kodą. Turite naudoti šiuos teiginius prieš kitų deklaracijų.
    using System;using System.IO;using System.Collections;					
  4. Atidaryti failą, skaityti, kurti naują egzempliorių StreamReader objekto ir perduoti failo kelias į konstruktorius taip:
    StreamReader objReader = new StreamReader("c:\\test.txt");					
  5. Turite turėti Styga kintamojo, kuriame norite saugoti kiekvieną eilutę į failą kaip jums procesas. Nes jums bus pridėti šias eilutes, ArrayList, skirto, paskelbti ir sukurti objekto tipo, taip pat.
    string sLine="";ArrayList arrText = new ArrayList();					
  6. Yra keletas būdų, kaip skaityti failą, įskaitant ReadToEnd metodas, kuris nuskaito visą failą vienu metu. Tačiau, pavyzdžiui, jums naudoti ReadLine metodas, pareikšti failą vienoje linijoje vienu metu. Kai bus pasiekta failo pabaiga, šis metodas grąžina null, kuri numato galimybę nutraukti savo linijos. Kaip jūs skaitote kiekvieną eilutę iš failo, galite pridėti metodas ArrayList, skirto įterpti eilutes į jūsų ArrayList, skirto klasės.
    while (sLine != null){	sLine = objReader.ReadLine();	if (sLine != null)		arrText.Add(sLine);}objReader.Close();					
  7. Naudoti kiekvienam kilpa rašyti savo naujai įdaryti ArrayList, skirto turinį į konsolę taip:
    foreach (string sOutput in arrText)	Console.WriteLine(sOutput);Console.ReadLine();					
  8. Įrašyti ir paleisti savo kodą, kuris sukuria sąrašą konsolės failo.

Užbaigti kodą sąrašą

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();		}	}}				

Trikčių šalinimas

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

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

Savybės

Straipsnio ID: 306777 – Paskutinė peržiūra: 06/07/2013 01:05:00 – Peržiūra: 1.0

  • Microsoft Visual C# 2005
  • Microsoft Visual C# .NET 2002 Standard Edition
  • Microsoft Visual C# 2008 Express Edition
  • kbcollections kbhowtomaster kbio kbmt KB306777 KbMtlt
Atsiliepimai