2012-12-07 4 views
-1

SaveFileDialog 컨트롤을 사용하여 파일을 저장하려고합니다. 저장하기 위해 파일이 이미 존재해야하는 이유는 무엇입니까?파일이 존재하지 않습니다 파일 이름이 존재하는지 확인 SaveFileDialog?

string month = dateTimePicker1.Value.Month.ToString(); 
string year = dateTimePicker1.Value.Year.ToString(); 
SaveFileDialog saveFileDialog1 = new SaveFileDialog(); 
saveFileDialog1.InitialDirectory = @"C:\"; 
saveFileDialog1.Title = "Save Sql Files"; 
saveFileDialog1.FileName = "MysqlBackup-"+month+"-"+year+".sql"; 
saveFileDialog1.CheckFileExists = true; 
saveFileDialog1.DefaultExt = "Sql"; 
saveFileDialog1.Filter = "Sql files (*.Sql)|*.Sql"; 
saveFileDialog1.FilterIndex = 2; 
saveFileDialog1.RestoreDirectory = true; 
if (saveFileDialog1.ShowDialog() == DialogResult.OK) 
    { 
    // Here is the error. After typing in the filename, when I click OK it gives me an error stating that the file does not exist. 
    } 

답변

4

이 줄은 파일이 선택한 폴더에 false로

saveFileDialog1.CheckFileExists = true; 

세트를 존재하고 파일이있는 경우 OK를 종료 할 수 있어야합니다 :

내가 사용하고있는 코드입니다 존재하지 않는

CheckFileExists on MSDN

사용자가 존재하지 않는 파일 이름을 지정하면 대화 상자에 경고가 표시되는지 여부를 나타내는 값을 가져 오거나 설정합니다.

0

당신은 설정해야합니다

saveFileDialog.OverwritePrompt = true; 
saveFileDialog.CreatePrompt = false; 

OverwritePrompt : 가져 오거나 사용자가 이미 존재하는 파일 이름을 지정하는 경우 다른 이름으로 저장 대화 상자가 경고를 표시할지 여부를 나타내는 값을 가져 오거나 설정합니다.

CreatePrompt : 사용자가 존재하지 않는 파일을 지정하면 대화 상자에 파일 만들기 권한이 있는지 여부를 나타내는 값을 가져 오거나 설정합니다.