Как сделать приложение WPF не перезаписывать файлы, которые оно создает.
Приведенная ниже программа создает моментальный снимок самой себя, нажав клавишу P. Он создает файл в каталоге, в котором находится программа. Например, при первом нажатии клавиши P создается файл snapshot.png, при повторном нажатии-snapshot_1, при третьем-snapshot_2 и так далее...
Но если вы закроете программу и запустите ее снова, и эти файлы уже существуют в каталоге, если теперь вы нажмете клавишу P, она перезапишет их...
Я хочу, чтобы программа проверила, существует ли файл, который она пытается создать, и если да, то попыталась создать файл со следующим номером в строке.. и если он тоже существует, то попробуйте следующий, и так далее, пока она не найдет имя файла, которое не существует, и только тогда создать файл.
Не могли бы вы, ребята, помочь мне изменить код, чтобы сделать то, что я описываю?
Спасибо
Что я уже пробовал:
string filename = "\\screenshot.png"; private void Mainwindow_KeyDown(object sender, KeyEventArgs e) { if (e.Key == Key.P) { FrameworkElement element = UxVisual as FrameworkElement; var pathstr = System.IO.Path.GetDirectoryName(System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName); if (System.IO.File.Exists(pathstr + filename)) { try { string i = filename.Substring(filename.LastIndexOf('_') + 1, filename.LastIndexOf('.') - (filename.LastIndexOf('_') + 1)); filename = "\\screenshot_" + (Convert.ToInt32(i) + 1).ToString() + ".png"; } catch { filename = "\\screenshot_1.png"; } } Uri path = new Uri(pathstr + filename); CaptureScreen(element, path); }