Asunto: Saber si existe y crear un directorio o carpeta en C# CSharp
¿Cómo puedo saber si existe un directorio o carpeta en Visual C# C Sharp? ¿cómo puedo crearlo si no existe?
Publicado:
Vie Feb 10, 2012 9:05 am
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto: Re: Saber si existe y crear un directorio o carpeta en C# CS
Anuncios
varios escribió:
¿Cómo puedo saber si existe un directorio o carpeta en Visual C# C Sharp? ¿cómo puedo crearlo si no existe?
Para saber si existe un directorio puedes usar: Directory.Exists(fichero). Un ejemplo:
Código:
string ruta = "C:\\Carpeta";
if (Directory.Exists(ruta))
{
MessageBox.Show("La carpeta existe.",
"Carpeta existe", MessageBoxButtons.OK,
MessageBoxIcon.Information);
}
else
{
MessageBox.Show("La carpeta no existe.",
"Carpeta no existe", MessageBoxButtons.OK,
MessageBoxIcon.Exclamation);
}
Ten en cuenta que Directory pertenece al espacio de nombres (namespace): System.IO, por lo que tendrás que agregar en la parte de los Using la línea:
using System.IO;
Publicado:
Vie Feb 10, 2012 9:10 am
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto: Re: Saber si existe y crear un directorio o carpeta en C# CS
Anuncios
Para crear una carpeta con C# C Sharp puedes usar: CreateDirectory, un ejemplo completo donde tienes cómo saber si un directorio existe, obtener parámetros pasados como argumento al ejecutable, combinar para obtener una ruta, extraer la carpeta de una ruta con nombre de fichero, crear un fichero, etc.:
Código:
private void escribirFichero (string texto)
{
//obtenemos la carpeta y ejecutable de nuestra aplicación
string rutaFichero = Environment.GetCommandLineArgs()[0];
//obtenemos sólo la carpeta (quitamos el ejecutable)
string carpeta = Path.GetDirectoryName(rutaFichero);
//Montamos la carpeta y el fichero temporal con el
//primer parámetro que es el código de solicitud
rutaFichero = Path.Combine(carpeta, "factura_" +
Environment.GetCommandLineArgs()[1] + ".inc");
try
{
//si no existe la carpeta temporal la creamos
if (!(Directory.Exists(carpeta)))
{
Directory.CreateDirectory(carpeta);
}
if (Directory.Exists(carpeta))
{
//Creamos el fichero temporal y
//añadimos el texto pasado como parámetro
System.IO.StreamWriter ficheroTemporal =
new System.IO.StreamWriter(rutaFichero);
ficheroTemporal.WriteLine(texto);
ficheroTemporal.Close();
}
}
catch (Exception errorC)
{
MessageBox.Show("Ha habido un error al intentar " +
"crear el fichero temporal:" +
Environment.NewLine + Environment.NewLine +
rutaFichero + Environment.NewLine +
Environment.NewLine + errorC.Message,
"Error al crear fichero temporal",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
}
Publicado:
Vie Feb 10, 2012 10:03 am
mecs Usuario
Registrado: Oct 30, 2013 Mensajes: 2
Asunto:
Hola BUenas Tardes..
Tengo un problema similar, solo que yo quiero verificar si un archivo existe en una ruta determinada, pero en una pc remota... la verdad eh estado buscando pero no encuentro, como todos hablan sobre los procesos remotos, y lo que quiero es verificar si existe un archivo, por ej.
quiero saber si en una pc remota existe el archivo zzzz.txt
en la ruta c:\aqui\esta
Nose si me puedan ayudar??
se los agradeceria demasiado
Publicado:
Mar Oct 29, 2013 10:50 pm
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto:
mecs escribió:
Hola BUenas Tardes..
Tengo un problema similar, solo que yo quiero verificar si un archivo existe en una ruta determinada, pero en una pc remota... la verdad eh estado buscando pero no encuentro, como todos hablan sobre los procesos remotos, y lo que quiero es verificar si existe un archivo, por ej.
quiero saber si en una pc remota existe el archivo zzzz.txt
en la ruta c:\aqui\esta
Nose si me puedan ayudar??
se los agradeceria demasiado
Para comprobar si un fichero existe en C# puedes usar:
Código:
if (System.IO.File.Exists("C:\\aqui\\esta\\zzzz.txt"))
{
//código si fichero existe
}
else
{
//código si fichero no existe
}
Ten en cuenta que hemos duplicado las barras \\ pues así hay que pasárselas si se ponen como texto.
Se puede usar también con notación UNC por lo que puede comprobar si existen ficheros en red de la misma forma:
Código:
if (System.IO.File.Exists("\\\\pcremoto\\aqui\\esta\\zzzz.txt"))
{
//código si fichero existe
}
else
{
//código si fichero no existe
}
Como ves también hemos duplicado las barras, la notación UNC normal sería:
Puede publicar nuevos temas en este foro No puede responder a temas en este foro No puede editar sus mensajes en este foro No puede borrar sus mensajes en este foro No puede votar en encuestas en este foro
Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A