25.07.2017 Views

Intro-CSharp-Book-v2015

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

628 Въведение в програмирането със C#<br />

Като параметри в примера подаваме име на файла, който ще четем и обект<br />

от тип Encoding. Ако не бъде зададено специфично кодиране при<br />

отварянето на файла, се използва стандартното кодиране UTF-8. В<br />

показаният по–горе случай използваме кодиране Windows-1251. Windows-<br />

1251 е 8-битов (еднобайтов) набор символи, проектиран от Майкрософт за<br />

езиците, използващи кирилица като български, руски и други. Кодиранията<br />

ще разгледаме малко по-късно в настоящата глава.<br />

Четене на текстов файл ред по ред – пример<br />

След като се научихме как да създаваме StreamReader вече можем да се<br />

опитаме да направим нещо по-сложно: да прочетем цял текстов файл ред<br />

по ред и да отпечатаме прочетеното на конзолата. Нашият съвет е да<br />

създавате текстовия файл в Debug папката на проекта (.\bin\Debug), така<br />

той ще е в същата директория, в която е вашето компилирано приложение<br />

и няма да се налага да подаваме пълния път до него при отварянето<br />

на файла. Нека нашият файл изглежда така:<br />

This is our first line.<br />

This is our second line.<br />

This is our third line.<br />

This is our fourth line.<br />

This is our fifth line.<br />

Sample.txt<br />

Имаме текстов файл, от който да четем. Сега трябва да създадем обект от<br />

тип StreamReader и да прочетем и отпечатаме всички редове. Това можем да<br />

направим по следния начин:<br />

FileReader.cs<br />

class FileReader<br />

{<br />

static void Main()<br />

{<br />

// Create an instance of StreamReader to read from a file<br />

StreamReader reader = new StreamReader("Sample.txt");<br />

int lineNumber = 0;<br />

// Read first line from the text file<br />

string line = reader.ReadLine();<br />

// Read the other lines from the text file<br />

while (line != null)<br />

{<br />

lineNumber++;<br />

Console.WriteLine("Line {0}: {1}", lineNumber, line);

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!