这是代码:
private void beginOperationToolStripMenuItem_Click(object sender, EventArgs e)
{
changeFileNameToolStripMenuItem.Enabled = false;
if (File.Exists(fullDefaultDirectory))
{
File.Delete(fullDefaultDirectory);
}
ffmp.Start(fullDefaultDirectory, 25);//"test.avi", @"d:\", 25);
timer1.Enabled = true;
startStop = true;
}
现在我检查文件是否存在并将其删除,但这不是好方法,因为我需要一个文件在硬盘上。
所以我想做的是:
- 如果文件存在,询问用户是删除它还是使用相同的名称运行它。
- 如果删除打开保存对话框并让用户设置一个新的文件名。
- 如果没有删除,只需运行现有文件并创建相同的文件名。
这是我已经拥有的保存对话框:
private void changeFileNameToolStripMenuItem_Click(object sender, EventArgs e)
{
SaveFileDialog saveFileDialog1 = new SaveFileDialog();
saveFileDialog1.Filter = "Avi|*.avi";
saveFileDialog1.Title = "Save an Avi File";
saveFileDialog1.ShowDialog();
// If the file name is not an empty string open it for saving.
if (saveFileDialog1.FileName != "")
{
//outputFileName = Path.GetFileName(saveFileDialog1.FileName);
//outputDirectory = Path.GetDirectoryName(saveFileDialog1.FileName);
fullDefaultDirectory = saveFileDialog1.FileName;
Options_DB.Set_Video_File(fullDefaultDirectory);
}
}
但是我在谈论用户没有更改任何内容并且变量 fullDefaultDirectory 包含相同的目录和文件名然后让用户决定是否删除或运行它的情况。
fullDefaultDirectory 始终包含一个文件名,因为我有一个设置文件名文本文件,我在其中保存用户选择的目录和文件名。如果他没有选择任何东西,默认是我默认的某个文件,如果他选择了一个文件,它将创建用户选择的文件。
我需要解决文件已经存在的情况。