Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Работа с файлами в C#

37K
12 мая 2010 года
Subaro
14 / / 07.03.2009
Возникла вот такая интересная штука.
Приложение работает с одним файлом.
Во время работы в этот файл могут что то записывать, приложению надо это считывать из файла. Вся суть проблемы реализовать и считывание и запись в произвольное время.
Как реализовывал:
FileStream fs;
StreamWriter written;
StreamReader reader;

fs = new FileStream("Listing.txt",
FileMode.Create,
FileAccess.ReadWrite,
FileShare.ReadWrite);
written = new StreamWriter(fs);
reader = new StreamReader(fs);

public void Push(string simpletext)
{
written.WrieLin(simpletext);
}
public void Out()
{
written.Flush();
reader.ReadLin();
}

При попытке считать, он мне ничего не считывает.
Кто знает как решить эту проблему?
307
12 мая 2010 года
Artem_3A
863 / / 11.04.2008
во первых, оформи код в соответствии с правилами форума. во вторых, дело в том, что чтение начинается с конца файла, так как после операции записи текущая позиция в потоке будет в конце, тебе надо перед чтением перейти к началу файла, кажись метод Seek();. в третьих, тут тебе кажись нужны методы асинхронного чтения записи, читай в мздн.
297
12 мая 2010 года
koodeer
1.2K / / 02.05.2009
to Subaro

Учитывая FileMode.Create, файл будет каждый раз создаваться заново (при запуске программы, или смотря где стоит этот код). Следовательно, данные вовсе не должны сохраняться между запусками программы. Следовательно, от файла можно отказаться, и использовать какую-нибудь коллекцию. Имхо, в данном случае лучше всего будет очередь System.Collections.Generic.Queue<string>. Единственным ограничением может служить большой объём временно хранимых данных (гигабайты).
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог