Módulos archivo y sistema — Operaciones del Sistema
Archivos: stdlib/std/archivo.fa, stdlib/std/sistema.fa
¿Por qué existen?
Proveen acceso al sistema de archivos y al sistema operativo. archivo.fa maneja la creación, lectura, escritura y eliminación de archivos. sistema.fa proporciona información del sistema (SO, arquitectura, versión de Forja) y permite ejecutar comandos del sistema.
Módulo archivo — Operaciones de Archivos
| Función | Descripción |
|---|---|
archivo_leer(ruta) | Lee el contenido completo de un archivo como texto |
archivo_escribir(ruta, contenido) | Escribe contenido a un archivo (sobrescribe) |
archivo_agregar(ruta, contenido) | Agrega contenido al final de un archivo |
archivo_eliminar(ruta) | Elimina un archivo |
archivo_existe(ruta) | Verifica si un archivo existe |
archivo_copiar(origen, destino) | Copia un archivo |
archivo_mover(origen, destino) | Mueve/renombra un archivo |
archivo_tamano(ruta) | Obtiene el tamaño de un archivo en bytes |
archivo_permisos(ruta) | Obtiene los permisos de un archivo |
directorio_crear(ruta) | Crea un directorio (y padres si es necesario) |
directorio_listar(ruta) | Lista el contenido de un directorio |
directorio_eliminar(ruta) | Elimina un directorio vacío |
Módulo sistema — Información del Sistema
| Función/Constante | Descripción |
|---|---|
sistema_operativo() | Retorna el nombre del SO (windows, linux, macos) |
arquitectura() | Retorna la arquitectura (x86_64, aarch64) |
version_forja() | Retorna la versión del compilador Forja |
tiempo_actividad() | Retorna segundos desde el inicio del sistema (uptime) |
nombre_host() | Retorna el nombre del host |
usuario_actual() | Retorna el nombre del usuario actual |
directorio_actual() | Retorna el directorio de trabajo actual |
directorio_temporal() | Retorna la ruta del directorio temporal |
num_procesadores() | Retorna la cantidad de núcleos de CPU |
memoria_total() | Retorna la memoria RAM total en bytes |
Casos de uso
- Procesamiento de archivos: Leer configuraciones, procesar logs, transformar datos
- Scripts de sistema: Automatizar tareas de administración
- Persistencia: Guardar y cargar datos entre ejecuciones
- Portabilidad: Escribir scripts que funcionen en Windows, Linux y macOS
💡 Tip: Combiná
archivo_leer con json.parsear para leer archivos de configuración JSON, o con csv.leer para procesar datos tabulares.