2014-11-15 3 views
0

мне нужно сохранить файл, используя SaveFileDialog в определенную папку ..Сохранить файл в определенную папку в C#, используя SaveFileDialog

Для examaple, чтобы сохранить в «C: \ MyNewFolder»

если папка доцент существует так, чтобы создать и сохранить, если папка существуют только сохранить ..

 String fileName=""; 
     String date = DateTime.Now.Day+"-"+DateTime.Now.Month+"-"+DateTime.Now.Year; 
     SaveFileDialog saveFileDialog1 = new SaveFileDialog(); 
     saveFileDialog1.FileName = fileName; 
     if (saveFileDialog1.ShowDialog() == DialogResult.OK) 
     { 
      using (Stream s = File.Open(saveFileDialog1.FileName,FileMode.CreateNew)) 

      using (StreamWriter sw = new StreamWriter(s)) 
      { 
       sw.WriteLine(tbName.Text); 
       sw.WriteLine(tbSummary.Text); 
      } 

     } 
+0

Как вы указываете непобедимый путь? Если вы попытаетесь ввести его непосредственно в текстовое поле имени файла, вы получите сообщение об ошибке из SaveFileDialog. – Steve

+0

@Steve Спасибо..довольно заметите, что, как я могу исправить это? – user2922456

+0

Нажатие кнопки для создания новой папки в SaveFileDialog? Насколько мне известно, SaveFileDialog не разрешает возвращать неиспользуемый путь в Windows7, даже если вы кодируете событие FileOK. [См. Эту статью в Microsoft Connect] (https://connect.microsoft.com/VisualStudio/feedback/details/716464/savefiledialog-checkpathexists-ignored-on-windows-7) – Steve

ответ

1

Вы можете посмотреть на

SaveFileDialog save = new SaveFileDialog(); 
save.InitialDirectory = "c:\\MyNewFolder"; 
save.RestoreDirectory = true; 
+0

Но если папка dosent exsit не работает. – user2922456

+0

Вы можете проверить папку перед сохранением файла, если не существует, создать его. SaveFileDialog позволяет выбрать местоположение, поэтому вы можете начать только с начальной директории. –

+0

@ Grx70 Как проверить, существует ли каталог? – user2922456

1
string strPath="c:\MyNewFolder"; 

if (!Directory.Exists(strPath)) 

{ 

    Directory.CreateDirectory(strPath); 

} 

else 

{ 

//Continue your logic and append your file name 

} 
+0

Вам не нужно проверять, существует ли каталог. Если папка не существует, ничего не произойдет. Если каталог не существует, он будет создан – Sybren

Смежные вопросы