Задать вопрос
  • Почему не создается новый файл в C#?

    @Nirmanakaya61 Автор вопроса
    Alexander, задал в FileService, не помогло.

    using System;
    using System.Threading.Tasks;
    
    namespace WinPortScanner
    {
        class FileService : IDisposable
        {
            
            static string path = @$"c:\report{DateTime.Now.Day}{DateTime.Now.Month}{DateTime.Now.Year}_{DateTime.Now.Hour}{DateTime.Now.Minute}{DateTime.Now.Second}.csv";
            private StreamWriter file = new StreamWriter(path, false);
    
    
    
            public void Dispose()
            {
    
                
            }
    
            public void WriteOpen(string ip, int port)
            {
                file.WriteLine($"{DateTime.Now}, {ip}, {port}, Open");
            }
    
            public void WriteClose(string ip, int port)
            {
                file.WriteLine($"{DateTime.Now}, {ip}, {port}, Close");
            }
    
            public void CloseFile()
            {
                file.Close();
            }
    
        }
    }
  • Почему не создается новый файл в C#?

    @Nirmanakaya61 Автор вопроса
    Извиняюсь, забыл. Может проблема в static?

    Settings.cs:
    using System;
    
    namespace WinPortScanner
    {
        class Settings
        {
            
            public static string path = @$"c:\report{DateTime.Now.Day}{DateTime.Now.Month}{DateTime.Now.Year}_{DateTime.Now.Hour}{DateTime.Now.Minute}{DateTime.Now.Second}.csv";
        }
    }
  • Почему не создается новый файл в C#?

    @Nirmanakaya61 Автор вопроса
    freeExec, да, я хочу, чтобы при каждом нажатии кнопки Scan (то есть при запуске метода ScanPort из формы) происходило создание нового файла, даже если аргументы остались прежними (тот же ip и диапазон портов). Файл создается из даты и времени с секундами, так что повторяющихся названий в принципе не должно быть. Но создается только первый файл, а потом программа дописывает или переписывает все в него, это если не запускать программу заново через CTRL-F5, а работать с открытой формой. Хотя по логике (по крайней мере той, которую я сейчас вижу, а я могу ошибаться) при нажатии Scan должен запускаться новый цикл программы, в том числе и создание нового файла.