Capítulo 30: Archivos y carpetas en scripts EPLAN
5 min de lectura
Parte IX: Archivos y Carpetas - Sección 17: Operaciones con archivos - Nivel: Intermedio
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
- Conceptos básicos de Rutas (Strings)
- Namespace
System.IO
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
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
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 Enero
Directory.CreateDirectory(@"C:\Proyectos\2025\Enero");
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; // Importante
using 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
- 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
Capítulo anterior
Ver capítulos anteriores
Próximo capítulo
Ver capítulos siguientes
Ahora veremos lo mismo, pero para archivos individuales.