Если папка не существует, создайте ее

Я использую элемент управления FileUploader в своем приложении. Я хочу сохранить файл в указанной папке. Теперь я хочу, если эта папка не существует, сначала ее создать, а затем сохранить файл в этой папке. Если папка уже существует, просто сохраните в ней файл.

Как я могу это сделать?

Как говорили другие, используйте System.IO.Directory.CreateDirectory

Но сначала вам не нужно проверять, существует ли она. Из документов

Все каталоги, указанные в пути, создаются, если они уже не существуют или если некоторая часть пути недействительна. Параметр path указывает путь к каталогу, а не путь к файлу. Если каталог уже существует, этот метод ничего не делает.

Используйте приведенный ниже код в соответствии с http://forums.asp.net/p/1226236/2209871.aspx :

 string subPath ="ImagesPath"; // your code goes here bool exists = System.IO.Directory.Exists(Server.MapPath(subPath)); if(!exists) System.IO.Directory.CreateDirectory(Server.MapPath(subPath)); 

Просто напишите эту строку:

 System.IO.Directory.CreateDirectory(myDir); 
  • Если папка еще не существует , она будет создана .
  • Если папка уже существует , строка будет проигнорирована .

Ссылка: статья о Directory.CreateDirectory в MSDN

Вы можете создать путь, если он еще не существует, с помощью следующего метода:

 using System.IO; private void CreateIfMissing(string path) { bool folderExists = Directory.Exists(Server.MapPath(path)); if (!folderExists) Directory.CreateDirectory(Server.MapPath(path)); } 

Directory.Exists Это объяснит, как проверить, существует ли FilePath Exist

Directory.CreateDirectory Это объяснит, как попытаться создать FilePath, если он не существует

 using System.IO if (!Directory.Exists(yourDirectory)) Directory.CreateDirectory(yourDirectory); 

Вы можете использовать предложение try / catch и проверить, существует ли он:

  try { if (!Directory.Exists(path)) { // Try to create the directory. DirectoryInfo di = Directory.CreateDirectory(path); } } catch (IOException ioex) { Console.WriteLine(ioex.Message); } 

Этот метод будет создавать папку, если не существует, и ничего не делать, если существует

 Directory.CreateDirectory(path); 
 if (!Directory.Exists(Path.GetDirectoryName(fileName))) { Directory.CreateDirectory(Path.GetDirectoryName(fileName)); } 

Следующий код – лучшая строка (ы) кода i, которая будет создавать каталог, если он отсутствует.

 System.IO.Directory.CreateDirectory(HttpContext.Current.Server.MapPath("~/temp/")); 

Если каталог уже существует, этот метод не создает новый каталог, но он возвращает объект DirectoryInfo для существующего каталога. >

Используйте ниже код. Я использовал этот код для копирования файлов и создания новой папки.

 string fileToCopy = "filelocation\\file_name.txt"; String server = Environment.UserName; string newLocation = "C:\\Users\\" + server + "\\Pictures\\Tenders\\file_name.txt"; string folderLocation = "C:\\Users\\" + server + "\\Pictures\\Tenders\\"; bool exists = System.IO.Directory.Exists(folderLocation); if (!exists) { System.IO.Directory.CreateDirectory(folderLocation); if (System.IO.File.Exists(fileToCopy)) { MessageBox.Show("file copied"); System.IO.File.Copy(fileToCopy, newLocation, true); } else { MessageBox.Show("no such files"); } } 

Это был ответ, который я искал, но не нашел:

  string pathToNewFolder = System.IO.Path.Combine(parentFolderPath, "NewSubFolder"); DirectoryInfo directory = Directory.CreateDirectory(pathToNewFolder); // Will create if does not already exist (otherwise will ignore) 
  • путь к новой папке
  • переменную каталога, чтобы вы могли продолжать манипулировать ею, как вам будет угодно.

string createfolder = “E: / tmp /” + uId;
System.IO.Directory.CreateDirectory (CreateFolder);

 string root = @"C:\Temp"; string subdir = @"C:\Temp\Mahesh"; // If directory does not exist, create it. if (!Directory.Exists(root)) { Directory.CreateDirectory(root); } 

CreateDirectory также используется для создания подкаталога. Все, что вам нужно сделать, это указать путь к каталогу, в котором будет создан этот подкаталог. Следующий fragment кода создает подкаталог Mahesh в C:\Temp directory .

 // Create sub directory if (!Directory.Exists(subdir)) { Directory.CreateDirectory(subdir); } 

Выведенный / комбинированный из нескольких ответов, реализация которого для меня была такой же простой:

 public void Init() { String platypusDir = @"C:\platypus"; CreateDirectoryIfDoesNotExist(platypusDir); } private void CreateDirectoryIfDoesNotExist(string dirName) { System.IO.Directory.CreateDirectory(dirName); } 
  • Использование SSL и SslStream для одноранговой аутентификации?
  • Преобразование пикселей в точки
  • Можно ли переопределить MultipartFormDataStreamProvider, чтобы не сохранять загрузки в файловую систему?
  • Соответствуют ли скобки после имени типа с новым?
  • Инициализация элементов статических данных
  • недопустимое использование неполного типа
  • Сериализация с Qt
  • Проблема parsingа текста валюты на десятичный тип
  • Проверка сертификата x509 в C
  • Список привязок к DataGridView в WinForm
  • Почему множественное наследование не разрешено в Java или C #?
  • Interesting Posts

    Словарь, в котором значение является анонимным типом в C #

    Мой Dell Inspiron N5050 не подключается к беспроводной сети

    Список Емкость возвращает больше элементов, чем добавлено

    Как вернуть String или JSONObject из асинхронного обратного вызова с помощью Retrofit?

    Что такое scope / named_scope в рельсах?

    Windows: «Эта операция была отменена из-за ограничений, действующих на этом компьютере. Пожалуйста, обратитесь к системному администратору."

    Определите, когда Windows была установлена ​​на компьютер

    Как установить приложение по умолчанию для открытия одного файла в Windows 7 и 8?

    SubSonic ASP.NET MVC-образец в Visual Web Developer Express

    Как разбить список массивов на равные части?

    Как разместить мои библиотеки перед android.jar, отредактировав build.gradle в Android-Studio

    Что делает ?

    Клонирование окон с жесткого диска на m.2 ssd

    Как получить IP-адрес машины в C #

    Динамическая динамическая динамика – JPA

    Давайте будем гением компьютера.