Программирование PC Visual Studio C#: добавление нового класса (запись в лог) Sat, October 05 2024  

Поделиться

Нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.

Visual Studio C#: добавление нового класса (запись в лог) Печать
Добавил(а) microsin   

Обычно в программу вводят новый класс, когда нужно добавить некоторую функцию, которую можно выделить в отдельный модуль кода. Отдельный модуль и отдельный класс используют для того, чтобы не загромождать кодом основной модуль программы (так проще разбираться в коде и поддерживать его). Рассмотрим добавление в программу класса на примере записи сообщений в текстовый лог программы (появится класс log и соответствующий ему модуль log.cs).

1. Меню Проект -> Добавить класс... -> укажите имя нового модуля (файла с расширением *.cs). Для нашего примера log.cs.

2. В модуле log.cs имеется заготовка нового класса log. Добавьте в файл код:

   class log
   {
      //конструктор
      public log ()
      {
      }
      public void write (string msg)
      {
         DateTime currtime = DateTime.Now;
         using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"log.txt", true))
         {
            string tmptxt = String.Format("{0:yyMMdd hh:mm:ss} {1}", currtime, msg);
            file.WriteLine(tmptxt);
            file.Close();
         }
      }
   } 

Так как в конструкторе нет никаких действий, то его можно вообще исключить из программы (будет использоваться конструктор по умолчанию). В нашем примере код конструктора добавлен только для наглядности - в нем можно реализовать предварительную инициализацию.

3. Как Вы наверное уже поняли, единственный метод класса write нужен для записи сообщений в текстовый файл log.txt. Пример использования (код формы приложения Form1.cs), при загрузке формы/старте программы в log.txt будут записаны две строки:

namespace MyApp
{
   public partial class Form1 : Form
   {
      log applog = new log(); //вызов конструктора класса log
      public Form1()
      {
         InitializeComponent();
      }
      private void Form1_Load(object sender, EventArgs e)
      {
         applog.write("[START]");
         applog.write("Hello, World!");
      }
   }
}

4. Для отслеживания сообщений в логе под Windows удобно использовать утилиту tail [1]. Если у Вас установлен пакет WinAVR [2], то аналогичная утилита tail доступна для непосредственного вызова через командную строку. Перейдите в каталог, где находится файл лога log.txt (если проект C# в режиме отладки, то это bin\Debug\), и введите команду tail -f log.txt. Появится окно, в котором будут появляться новые сообщения, записываемые в лог.

show-log-with-tail

[Ссылки]

1. Tail for Win32 - Home Page
2. WinAVR.

 

Добавить комментарий


Защитный код
Обновить

Top of Page