.NET 4.x Логирование консоли в файл - C#

Узнай цену своей работы

Формулировка задачи:

Люди, нужна помощь в создании лог файла для консоли. Имею простой код консоли...
        static void Main(string[] args)
        {
            // Logs...
            LogFile.SaveLog();
 
            GC.Collect();
            Log.Message(LogType.Debug, "Total used memory: {0}", GC.GetTotalMemory(false));
 
            ......
            // Всякие функции...
 
        }
И есть класс
    public class LogFile
    {
        public static void SaveLog()
        {
            var writer = new StreamWriter(@"Logs.log", true);
            writer.WriteLine();
            writer.Close();
        }
    }
И как я понял, создаётся лог файл и пишется в него всё то, что задаёт

writer.WriteLine();

Но, как мне сделать так, чтоб в начало Main я указал ссылку на класс, и функция в нём логировала всю консоль. Всё что выполняется в ней и пишется/читается? Хотелось бы иметь такой простой код. Другие библиотеки не хочу подключать. Хотелось бы иметь свой и простой лог файл. Без заморочек. Буду благодарен за помощь.
Пробовал даже StreamWriter... Файл создаётся и ничего туда не логируется.

Решение задачи: «.NET 4.x Логирование консоли в файл»

textual
Листинг программы
using System;
using System.IO;
 
namespace MyConsoleApplication
{
    static class Console
    {
        static readonly string _logPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "log.txt");
 
        public static void WriteLine()
        {
            File.AppendAllText(_logPath, Environment.NewLine);
            System.Console.WriteLine();
        }
 
        public static void WriteLine(string line)
        {
            File.AppendAllText(_logPath, line + Environment.NewLine);
            System.Console.WriteLine(line);
        }
 
        public static void Write(string line)
        {
            File.AppendAllText(_logPath, line);
            System.Console.Write(line);
        }
 
        public static void Write(int n)
        {
            File.AppendAllText(_logPath, n.ToString());
            System.Console.Write(n);
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.3 из 5
Похожие ответы