Capítulo 30: Verificar si carpeta existe
Capítulo 30: Verificar si carpeta existe
Sección titulada «Capítulo 30: Verificar si carpeta existe»Parte IX: Archivos y Carpetas - Sección 17: Operaciones con archivos - Nivel: Intermedio
Objetivos de aprendizaje
Sección titulada «Objetivos de aprendizaje»Al finalizar este capítulo serás capaz de:
- Usar la clase
System.IO.Directory - Verificar la existencia de directorios con
Exists - Crear nuevas carpetas automáticamente con
CreateDirectory
Requisitos previos
Sección titulada «Requisitos previos»- Conceptos básicos de Rutas (Strings)
- Namespace
System.IO
Introducción: Gestión de Directorios
Sección titulada «Introducción: Gestión de Directorios»Antes de exportar un PDF o guardar un Backup, debes asegurarte de que la carpeta de destino existe. Si no, EPLAN podría dar un error.
En .NET, la clase para manejar carpetas es System.IO.Directory.
1. Verificar existencia
Sección titulada «1. Verificar existencia»1.1 Método Exists
Sección titulada «1.1 Método Exists»using System.IO;
if (Directory.Exists(@"C:\Temp")){ // La carpeta existe}else{ // No existe}Es importante recordar que las rutas en C# suelen requerir el @ antes de las comillas para interpretar correctamente las barras invertidas (\).
2. Crear carpetas
Sección titulada «2. Crear carpetas»1.2 Método CreateDirectory
Sección titulada «1.2 Método CreateDirectory»Si la carpeta no existe, podemos crearla. Lo genial de este método es que crea toda la ruta necesaria.
// Crea C:\Proyectos, luego 2025, luego EneroDirectory.CreateDirectory(@"C:\Proyectos\2025\Enero");3. Ejemplo práctico: Asegurar ruta de exportación
Sección titulada «3. Ejemplo práctico: Asegurar ruta de exportación»Basado en EPLAN-Scripting-4.0/12_FilesFolders/01_CheckFolder.cs:
using System.Windows.Forms;using System.IO; // Importanteusing Eplan.EplApi.Scripting;
public class VerificarCarpeta{ [Start] public void Function() { string rutaObjetivo = @"C:\EPLAN_Export\PDFs\";
try { if (Directory.Exists(rutaObjetivo)) { MessageBox.Show("La carpeta ya existe."); } else { Directory.CreateDirectory(rutaObjetivo); MessageBox.Show("Carpeta creada correctamente."); } } catch (System.Exception ex) { MessageBox.Show("Error al manejar carpeta: " + ex.Message); } }}Resumen
Sección titulada «Resumen»- Usa
System.IO.Directory. Directory.Exists()para verificar.Directory.CreateDirectory()para crear.- Este patrón “Check-Create” es fundamental antes de cualquier operación de escritura.
Conexiones
Sección titulada «Conexiones»Capítulo anterior
Sección titulada «Capítulo anterior»Ver capítulos anteriores
Próximo capítulo
Sección titulada «Próximo capítulo»Ver capítulos siguientes
Ahora veremos lo mismo, pero para archivos individuales.