0Pricing
C# Academy · Lección

System.IO (rutas y streams)

Use los helpers de Path, compruebe la existencia y lea y escriba texto con StreamReader/StreamWriter mediante la instrucción using.

System.IO (rutas y streams) es una lección gratuita de C# Academy en CoddyKit. Esta es la lección 1 de 3. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de C# Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de C# Academy incluye 3 lecciones en total.

Introducción a System.IO

Objetivo: Leer y escribir archivos de forma segura.

  • Construya rutas con Path
  • Compruebe con File/Directory
  • Use StreamReader/StreamWriter dentro de un bloque using

Fundamentos de Path

Use Path.Combine y métodos similares para evitar separadores manuales y examinar las partes de una ruta.

using System;
using System.IO;

public class Program
{
  public static void Main(string[] args)
  {
    // Build a safe path (handles separators)
    string folder = "data";
    string file = "notes.txt";
    string path = Path.Combine(folder, file);

    Console.WriteLine("File name: " + Path.GetFileName(path));
    Console.WriteLine("Directory: " + Path.GetDirectoryName(path));
    Console.WriteLine("Full path: " + Path.GetFullPath(path));
  }
}

Crear y escribir

Use Directory.CreateDirectory (es seguro aunque ya exista) y File.WriteAllText para archivos pequeños.

using System;
using System.IO;

public class Program
{
  public static void Main(string[] args)
  {
    string folder = "data";
    if (!Directory.Exists(folder))
    {
      Directory.CreateDirectory(folder); // create if missing
    }

    string path = Path.Combine(folder, "hello.txt");
    // Simple one-shot write
    File.WriteAllText(path, "Hello file!");
    Console.WriteLine("Wrote: " + path);
  }
}

Lectura segura

Incluya los lectores en un bloque using. El identificador del archivo se libera incluso si se produce una excepción.

using System;
using System.IO;

public class Program
{
  public static void Main(string[] args)
  {
    string path = Path.Combine("data", "hello.txt");

    if (File.Exists(path))
    {
      using (StreamReader r = new StreamReader(path))
      {
        string content = r.ReadToEnd(); // read all
        Console.WriteLine("Content: " + content);
      } // Dispose closes the file
    }
    else
    {
      Console.WriteLine("Missing file: " + path);
    }
  }
}

Escritura segura

StreamWriter escribe texto. Pase append=true para agregar líneas sin sobrescribir el contenido.

using System;
using System.IO;

public class Program
{
  public static void Main(string[] args)
  {
    string path = Path.Combine("data", "log.txt");

    // Append = true so we keep old content
    using (StreamWriter w = new StreamWriter(path, true))
    {
      w.WriteLine(DateTime.UtcNow.ToString("u") + " - started");
      w.WriteLine("Work done");
    } // closed here

    Console.WriteLine("Appended to log: " + path);
  }
}

Comprobaciones y consejos

Consejos:

  • Compruebe File.Exists/Directory.Exists antes de usarlos.
  • Capture IOException para los errores de E/S e informe de ellos con un mensaje claro.
  • Prefiera using para todos los streams.

Regla de seguridad de streams

Comprobación rápida: ¿Cuál es la forma más segura de garantizar que un stream se cierre después de leer o escribir en C# 6?

Resumen

Resumen: Construya rutas con Path, compruebe su existencia y coloque siempre los lectores y escritores en un bloque using para limpiarlos de forma segura.

Preguntas frecuentes

¿La lección «System.IO (rutas y streams)» es gratis?

Sí — el texto completo de «System.IO (rutas y streams)» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de C# Academy, actualiza a CoddyKit PRO. El curso de C# Academy incluye 3 lecciones en total.

¿Qué aprenderé en «System.IO (rutas y streams)»?

Use los helpers de Path, compruebe la existencia y lea y escriba texto con StreamReader/StreamWriter mediante la instrucción using. Practicas C# Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar C# Academy?

No se requiere experiencia previa. C# Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 3.

¿Cuánto tiempo toma la lección «System.IO (rutas y streams)»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de C# Academy?

Sí. Cada lección de C# Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. System.IO (rutas y streams)
  2. JSON con System.Text.Json (opt-in y converters)
  3. Patrones sencillos para analizar CSV
← Volver a C# Academy