Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Почему может не загружатся файл? 
:(
    Опции темы
Elfet
Дата 23.1.2007, 18:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и Пушистый
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 3776
Регистрация: 2.4.2003

Репутация: нет
Всего: 16



 smile  smile  smile  smile 
Не сохраняется и не загружается. Подскажите, почему?
Код

        private Stack<Words> words;

        private void LoadWords()
        {
            using (FileStream stream = new FileStream("words.mrt", FileMode.Open))
            {
                StreamReader reader = new StreamReader(stream);
                string line;
                while ((line = reader.ReadLine()) != null)
                {
                    words.Push(new Words(line, false)); 
                }

            }
        }

        private void SaveWords()
        {
            using (FileStream stream = new FileStream("words.mrt", FileMode.OpenOrCreate))
            {
                StreamWriter writer = new StreamWriter(stream);
                foreach (Words w in words)
                {
                    if (w.isNew)
                    {
                        writer.Write(w.Text);
                    }
                }

            }
        }


Присоединённый файл ( Кол-во скачиваний: 4 )
Присоединённый файл  words.mrt 30,31 Kb


--------------------
PM MAIL WWW Skype   Вверх
TeRiX
Дата 23.1.2007, 18:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 5.1.2007

Репутация: 1
Всего: 1



что хоть за ошибку кидает?

может быть просто занят этот файл другим приложением....... скажем Excel'ем - он обычно блокирует файлы.....

Добавлено @ 19:08 
я посчелкал немного.... почему-то твой код при чтении всегда возвращает переносы строки \r\n

попробуй читать так.... (добавь кодировку)
StreamReader reader = new StreamReader(stream, Encoding.GetEncoding("windows-1251"));

так нормально проичтался весь файл....

Это сообщение отредактировал(а) TeRiX - 23.1.2007, 19:10
PM MAIL   Вверх
Elfet
Дата 23.1.2007, 19:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и Пушистый
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 3776
Регистрация: 2.4.2003

Репутация: нет
Всего: 16



Encoding.GetEncoding("windows-1251") О! Отлично заработало загружение! smile Спасибо!
Но вот сохраниение не заработало smile  smile 


--------------------
PM MAIL WWW Skype   Вверх
TeRiX
Дата 23.1.2007, 20:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 5.1.2007

Репутация: 1
Всего: 1



Вообщем я твой код для теста немного изменил, вот что получилось....

Код

class Class1
  {
    static string _value;

    [STAThread]
    static void Main(string[] args)
    {
      LoadWords();
      SaveWords();
    }

    private static void LoadWords()
    {
      using (FileStream stream = new FileStream("d:\\words.mrt", FileMode.Open))
      {
        StreamReader reader = new StreamReader(stream, Encoding.GetEncoding("windows-1251"));

        _value = reader.ReadToEnd();
      }
    }

    private static void SaveWords()
    {
      using (FileStream stream = new FileStream("d:\\words1.mrt", FileMode.OpenOrCreate))
      {
        StreamWriter writer = new StreamWriter(stream, Encoding.GetEncoding("windows-1251"));

        writer.Write(_value);

      }
    }


Так все работает.... опять добавил кодировку 
StreamWriter writer = new StreamWriter(stream, Encoding.GetEncoding("windows-1251"));
Если с кодировкой не заработает....то напиши, что в выходном файле у тебя получается.... желательно и его размер указать....

А лучше, запости его в дискуссию.... :-) будем разбираться.....

Это сообщение отредактировал(а) TeRiX - 23.1.2007, 20:16
PM MAIL   Вверх
Elfet
Дата 23.1.2007, 21:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и Пушистый
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 3776
Регистрация: 2.4.2003

Репутация: нет
Всего: 16



Только создает пустой файл.


--------------------
PM MAIL WWW Skype   Вверх
Naum
Дата 24.1.2007, 10:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 743
Регистрация: 7.9.2005
Где: Саратов, ул. Поса дского, 298

Репутация: 8
Всего: 15



Elfet, 
Код

 using (FileStream stream = new FileStream("words.mrt", FileMode.OpenOrCreate))
            {
                 using (StreamWriter writer = new StreamWriter(stream))
                {
                foreach (Words w in words)
                {
                    if (w.isNew)
                    {
                        writer.Write(w.Text);
                    }
                }
               }
            }

Или просто после того, как записал все, что нужно в файл, writer.Flush() или writer.Close().

Это сообщение отредактировал(а) Naum - 24.1.2007, 10:17


--------------------
У нас всего два праздника Новый год и ТЯПница.
PM MAIL ICQ   Вверх
Elfet
Дата 24.1.2007, 15:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и Пушистый
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 3776
Регистрация: 2.4.2003

Репутация: нет
Всего: 16



Да smile Спасиб) Забыл закрыть.


--------------------
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0439 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.