C# ошибка в записи файла

компьютеры программирование программы .net

if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
patch_game_zone = saveFileDialog1.FileName;

patch_game_zone_settings = Path.GetFullPath(patch_game_zone).Remove(Path.GetFullPath(patch_game_zone).LastIndexOf(@"."))+ "_settings"+Path.GetExtension(patch_game_zone);

FileInfo file_game_zone_settings = new FileInfo(patch_game_zone_settings);
file_game_zone_settings.Create();

FileInfo file_game_zone = new FileInfo(patch_game_zone);
file_game_zone.Create();
Save();


// Form2 main = new Form2();
// main.Show();
}
}
}
void Save()
{
string[] lines = { name_map, size_x.ToString(), size_y.ToString(), 1.ToString(), 1.ToString() };
System.IO.File.WriteAllLines(patch_game_zone_settings, lines);//В этой линии ошибка
}

Пишет ошибку (Типо файл используется другим процессом)

Примечание:
В других формах использую это же чтение и всё норм, а тут фигня эта

Примечание:
Все заработало!Вместо FileInfo file_game_zone = new FileInfo(patch_game_zone);
file_game_zone.Create(); прописал File.Create(patch_game_zone).Close();
Ответы:
А файл больше нигде не открывается?
Попробуйте взять Process Explorer и следить за открытыми файлами в программе во время отладки. Вероятно, что где-то до строки с ошибкой, файл открывается на запись. Не подскажу точно, но возможно вот здесь создаётся Handle:
FileInfo file_game_zone = new FileInfo(patch_game_zone);
file_game_zone.Create();
И дальше уже нельзя писать в открытый файл.


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

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

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.