Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > .NET для новичков > Не происходит считывание в файл


Автор: yngwie19 17.7.2009, 22:33
Код

using System;
using System.IO;

    class CsDateClass
    {
       public static void Main()
       {
           StreamWriter str_write;
           try
           {
               str_write = new StreamWriter("C:\\test.dat");
           }
           catch (IOException exp)
           {
               Console.WriteLine(exp.Message);
               return;
           }

           for (char i = 'A'; i < 'Z'; i++ )
           {
               str_write.Write(i);
           }
       }  
    }


C:\\test.dat пустой

Автор: QryStaL 17.7.2009, 22:43
Читайте про IDisposable

Код

            try
            {
                using (StreamWriter str_write = new StreamWriter("C:\\test.dat"))
                {
                    for (char i = 'A'; i < 'Z'; i++)
                    {
                        str_write.Write(i);
                    }
                }
            }
            catch (IOException exp)
            {
                Console.WriteLine(exp.Message);
                Console.Read();
            }

Автор: yngwie19 17.7.2009, 23:05
QryStaL, не понимаю почему не работает, объясните пожалуйста

Добавлено через 4 минуты и 19 секунд
после добавоения 
Код

str_write.Close(); 

все заработало

Автор: Grok 18.7.2009, 00:46
не работало, потому-что поток оставался открытым.... 
как в приведенном QryStaL коде, там где требуется вызов метода .Dispose(), лучше использовать конструкцию using(), там все делается автоматически ... 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)