C#. Работа с файлами.
В этом посте будут рассмотрены основные операции над файлами.
Примечание. Все необходимые классы находятся в пространстве имен System.IO.
Создание файла.Для этого воспользуемся классом FileInfo из пространства имен System.IO. В конструктор передаем имя будущего файла. Создание файла производится вызовом метода Create().
Используется csharp
FileInfo fi = new FileInfo("new.txt");
fi.Create();
Удаление файла.Все аналогично предыдущему примеру. Для удаления файла используем метод Delete().
Используется csharp
FileInfo fi = new FileInfo("new.txt");
fi.Delete();
Запись в файл.Для записи (а в последующем и для чтения) в файл мы будем использовать символьные потоки позволяющие оперировать непосредственно с символами Unicode.
Используется csharp
StreamWriter sw = new StreamWriter("name.txt");
sw.WriteLine("блаблабла");
sw.Close();
После всех действий над файлом не забываем закрывать его используя метод Close(), в противном случае изменения в файле не только не будут сохранены. Приведеный выше пример записи файла полностью перезаписывает его, если же надо дописать в конец файла:
Используется csharp
StreamWriter sw;
FileInfo fi = new FileInfo("name.txt");
sw = fi.AppendText();
sw.WriteLine("blablabla");
sw.Close();
Чтение из файла.Для того чтобы файл был корректно считан (без всяких непонятных символов), он должен быть сохранен в юникоде.
Используется csharp
StreamReader streamReader = new StreamReader("name.txt");
string str = "";
while (!streamReader.EndOfStream)
{
str += streamReader.ReadLine();
}
streamReader.Close();
Ещё один вариант, для разнообразия
Используется csharp
StreamReader streamReader = new StreamReader("name.txt");
string str = "", str_temp="";
while ((str_temp = streamReader.ReadLine()) != null)
{
str += str_temp;
}
streamReader.Close();