saber - path create folder c#
¿Cómo creo un directorio si no existe para crear un archivo? (5)
Aquí tengo un código que se rompe si el directorio no existe:
System.IO.File.WriteAllText(filePath, content);
En una línea (o unas líneas), ¿es posible verificar si el directorio que conduce al nuevo archivo no existe y, de no ser así, crearlo antes de crear el nuevo archivo?
Estoy usando .NET 3.5.
Como dijo @hitec, debes asegurarte de que tienes los permisos correctos, si lo haces, puedes utilizar esta línea para garantizar la existencia del directorio:
Directory.CreateDirectory(Path.GetDirectoryName(filePath))
Puede usar File.Exists para verificar si el archivo existe y crearlo usando File.Create si es necesario. Asegúrese de verificar si tiene acceso para crear archivos en esa ubicación.
Una vez que esté seguro de que el archivo existe, puede escribir de manera segura. Aunque, como precaución, debes poner tu código en un intento ... atrapar el bloque y atrapar las excepciones que esa función probablemente aumentará si las cosas no salen exactamente como se planeó.
Información adicional para conceptos básicos de E / S de archivos .
Puedes usar el siguiente código
DirectoryInfo di = Directory.CreateDirectory(path);
(new FileInfo(filePath)).Directory.Create()
Antes de escribir en el archivo.
O
System.IO.FileInfo file = new System.IO.FileInfo(filePath);
file.Directory.Create(); // If the directory already exists, this method does nothing.
System.IO.File.WriteAllText(file.FullName, content);
var filePath = context.Server.MapPath(Convert.ToString(ConfigurationManager.AppSettings["ErrorLogFile"]));
var file = new FileInfo(filePath);
file.Directory.Create();
Si el directorio ya existe, este método no hace nada.
var sw = new StreamWriter(filePath, true);
sw.WriteLine(Enter your message here);
sw.Close();