Процесс не может получить доступ к файлу XXX, потому что он используется другим процессом

Когда я запускаю свое приложение, я получаю эту ошибку при первом "использовании" здесь:

    public void CreateFile(string filePath)
    {

        //Create File
        string fileLoc = filePath;

        FileStream fs = null;
        if (!File.Exists(fileLoc))
        {
            using (fs = File.Create(fileLoc))
            {

            }
        }

    }

    public void WriteFile(string filePath)
    {
        //Write to File
        string fileLoc = filePath;

        if (File.Exists(fileLoc))
        {
            using (StreamWriter sw = new StreamWriter(fileLoc))
            {
                sw.Write("Some sample text for the file");
            }
        }
    }

Файл из этого каталога был ранее открыт и прочитан, но StreamReader был закрыт после его чтения. Я не уверен, имеет ли это какое-либо значение с этой ошибкой. Благодарю.

1 ответ

Ваша проверка File.Exists перед строкой, в которой вы получаете ошибку, указывает на то, что происходит что-то странное, например, попытка использовать путь к каталогу как filePathили многопоточные условия гонки.

Другие вопросы по тегам