Вы открываете файл с помощью
File.CreateText(file);
File.CreateText (String) метода
Возвращает StreamWriter StreamWriterкоторый записывает в указанный файл, используя кодировку UTF-8.
Тогда вы не закрываете его.Затем вы пытаетесь получить доступ к открытому файлу, открыв его снова
using (var writer = new StreamWriter(file))
Однако, исключение, которое вы получаете, является еще одной проблемой.При использовании StreamWriter
DirectoryNotFoundException Указанный путь недопустим (например, он находится на неподключенном диске).
Все вышеперечисленноеКроме того, я предлагаю вам сделать
string file = Path.Combine(Environment.CurrentDirectory, "test.txt");
Console.WriteLine(file);
//FileMode.Create will create or overwwrite the file
using (var fs = new FileStream(file,FileMode.Create))
using (var writer = new StreamWriter(fs))
{
}
Затем, если у вас все еще есть проблемы, перейдите в этот каталог и проверьте, есть ли файл, проверьте разрешения для каталога и файла и убедитесь, что у вас естьсоответствующий доступ.
Короче говоря, ваш код подозрительный, и вам нужно исправить его, во-вторых, вам нужно убедиться, какой файл он открывает, в-третьих, вам нужно проверить разрешения для этого файла и / или каталога