Saltar al pie de página
USANDO IRONXL

Generar archivos de Excel en C#

Las aplicaciones que desarrollamos están constantemente comunicándose con hojas de cálculo de Excel para obtener datos para su evaluación y resultados. Es muy útil poder generar archivos de Excel en C# programáticamente, ahorrándonos tiempo y esfuerzo en nuestro desarrollo. En este tutorial, aprenderemos sobre la generación de archivos de Excel en diferentes formatos, estableciendo estilos de celdas e insertando datos utilizando programación eficiente en C#.

## Generador de archivos de Excel en C#
  • Generar archivos de Excel con IronXL
  • Generar archivos Excel C# en .XLSX y .XLS
  • Generar archivos CSV
  • Genere archivos JSON, XML, TSV y más en proyectos de C#
How To Work related to Generar archivos de Excel en C#

Paso 1

1. Generar archivos de Excel con IronXL

Generar archivos Excel usando la Librería IronXL Excel para C#, proporcionando una gama de funciones para generar y manipular datos en tu proyecto. La biblioteca es gratuita para desarrollo, con licencias disponibles cuando estés listo para lanzar en vivo. Para seguir este tutorial, puedes descargar IronXL para generar o acceder a él a través de Visual Studio y NuGet gallery.


dotnet add package IronXl.Excel

Tutorial de cómo hacerlo

2. Descripción general del generador de archivos de Excel en C

En el desarrollo de aplicaciones empresariales, a menudo necesitamos generar diferentes tipos de archivos de Excel programáticamente. Para este propósito, necesitamos la forma más fácil y rápida de generar diferentes tipos de archivos y guardarlos automáticamente en la ubicación requerida.

Después de instalar IronXL, podemos usar las funciones para generar diferentes tipos de archivos Excel:

  • Archivo Excel con extensión .xlsx.
  • Archivo Excel con extensión .xls.
  • Archivos de valores separados por comas (.csv).
  • Archivos de valores separados por tabulaciones (.tsv).
  • Archivos de notación de objetos JavaScript (.json).
  • Archivos de lenguaje de marcado extensible (.xml).

Para generar cualquier tipo de archivo, primero necesitamos crear un Excel WorkBook .

// Generate a new WorkBook
WorkBook wb = WorkBook.Create();
// Generate a new WorkBook
WorkBook wb = WorkBook.Create();
$vbLabelText   $csharpLabel

La línea de código anterior creará un nuevo WorkBook llamado wb. Ahora crearemos un objeto WorkSheet .

// Generate a new WorkSheet
WorkSheet ws = wb.CreateWorkSheet("SheetName");
// Generate a new WorkSheet
WorkSheet ws = wb.CreateWorkSheet("SheetName");
$vbLabelText   $csharpLabel

Esto creará un WorkSheet llamado ws que podemos usar para insertar datos en archivos de Excel.


3. Generate XLSX File C

Primero, seguimos los pasos anteriores para generar el WorkBook y el WorkSheet.

Luego, insertamos datos para crear nuestro archivo de extensión .xlsx. Para ello, IronXL proporciona un sistema de direccionamiento de celdas que permite insertar datos en una dirección de celda específica mediante programación.

// Insert data by cell addressing
ws["CellAddress"].Value = "MyValue";
// Insert data by cell addressing
ws["CellAddress"].Value = "MyValue";
$vbLabelText   $csharpLabel

Insertará un nuevo valor "MyValue" en una dirección de celda específica. De la misma manera, podemos insertar datos en tantas celdas como necesitemos. Después de esto, guardaremos el archivo de Excel en la ruta especificada de la siguiente manera:

// Specify file path and name
wb.SaveAs("Path + FileName.xlsx");
// Specify file path and name
wb.SaveAs("Path + FileName.xlsx");
$vbLabelText   $csharpLabel

Esto creará un nuevo archivo Excel con la extensión .xlsx en la ruta especificada. No olvides escribir la extensión .xlsx con el nombre del archivo al guardar.

Para dar un paso más en cómo crear un WorkBook de Excel en un proyecto C#, consulta los ejemplos de código aquí.

/**
 * Generate XLSX File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook of .xlsx Extension
        WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX);

        // Create workSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";
        ws["C4"].Value = "IronXL";

        // Save the file as .xlsx
        wb.SaveAs("sample.xlsx");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate XLSX File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook of .xlsx Extension
        WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX);

        // Create workSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";
        ws["C4"].Value = "IronXL";

        // Save the file as .xlsx
        wb.SaveAs("sample.xlsx");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
$vbLabelText   $csharpLabel

Puede ver una captura de pantalla del archivo Excel recién creado sample.xlsx aquí:

Generar archivos de Excel en C#, Figura 1: El resultado del valor modificado en la celda C4 El resultado del valor modificado en la celda C4


4. Generate XLS File C

También es posible generar archivos .xls usando IronXL. Para este propósito, utilizaremos la función WorkBook.Create() de la siguiente manera:

// Create a workbook with XLS format
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
// Create a workbook with XLS format
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
$vbLabelText   $csharpLabel

Esto creará un nuevo archivo Excel con una extensión .xls. Tenga en cuenta que al asignar un nombre a un archivo de Excel, debe escribir la extensión .xls con el nombre del archivo, de la siguiente manera:

// Save the file as .xls
wb.SaveAs("Path + FileName.xls");
// Save the file as .xls
wb.SaveAs("Path + FileName.xls");
$vbLabelText   $csharpLabel

Ahora, veamos el ejemplo de cómo generar un archivo Excel con extensión .xls:

/**
 * Generate XLS File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook of .xls Extension
        WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .xls
        wb.SaveAs("sample.xls");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate XLS File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook of .xls Extension
        WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .xls
        wb.SaveAs("sample.xls");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
$vbLabelText   $csharpLabel

5. Generate CSV File C

Los archivos de valores separados por comas (.csv) también juegan un papel muy importante a la hora de mantener los datos en diferentes tipos de organizaciones. Por lo tanto, también necesitamos aprender cómo generar archivos .csv e insertar datos en ellos mediante programación.

Podemos utilizar el mismo proceso que el anterior, pero necesitamos especificar la extensión .csv con el nombre del archivo al guardar. Veamos un ejemplo de cómo crear archivos .csv en nuestro proyecto C#:

/**
 * Generate CSV File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .csv
        wb.SaveAsCsv("sample.csv");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate CSV File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .csv
        wb.SaveAsCsv("sample.csv");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
$vbLabelText   $csharpLabel

Para poder interactuar más con los archivos CSV, puedes seguir este tutorial para leer el archivo .csv .


6. Generate TSV File C

A veces necesitamos generar archivos de valores separados por tabulaciones (.tsv) e insertar datos mediante programación.

Usando IronXL también podemos generar archivos con la extensión .tsv, insertar datos en ellos y luego guardarlos en la ubicación requerida.

Veamos el ejemplo de cómo generar archivos con extensión .tsv:

/**
 * Generate TSV File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .tsv
        wb.SaveAsTsv("sample.tsv");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate TSV File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .tsv
        wb.SaveAsTsv("sample.tsv");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
$vbLabelText   $csharpLabel

7. Generate JSON File C

Podemos decir cómodamente que los archivos de Notación de Objetos JavaScript (.json) son los archivos de datos más comunes y se utilizan en casi todas las empresas de desarrollo de software. Por lo tanto, a menudo necesitamos guardar los datos en formato JSON. Para esto, necesitamos el método más simple para generar archivos en formato JSON e insertar los datos en ellos.

En tales condiciones, IronXL es la mejor opción mediante la cual podemos generar fácilmente estos archivos para C#. Veamos el ejemplo.

/**
 * Generate JSON File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "1";
        ws["A2"].Value = "john";
        ws["B1"].Value = "2";
        ws["B2"].Value = "alex";
        ws["C1"].Value = "3";
        ws["C2"].Value = "stokes";

        // Save the file as .json
        wb.SaveAsJson("sample.json");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate JSON File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "1";
        ws["A2"].Value = "john";
        ws["B1"].Value = "2";
        ws["B2"].Value = "alex";
        ws["C1"].Value = "3";
        ws["C2"].Value = "stokes";

        // Save the file as .json
        wb.SaveAsJson("sample.json");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
$vbLabelText   $csharpLabel

Y revise la captura de pantalla del archivo JSON recién creado sample.json :

Generar archivos de Excel en C#, Figura 2: Navegación al Administrador de paquetes NuGet en Visual Studio Navegando al Administrador de Paquetes NuGet en Visual Studio


8. Generate XML File C

En el desarrollo de aplicaciones comerciales, a menudo necesitamos guardar los datos en el formato de archivo de lenguaje de marcado extensible (.xml). Esto es importante porque los datos del archivo .xml son legibles tanto por humanos como por máquinas.

A través de los siguientes ejemplos, aprenderemos cómo generar archivos .xml para C# e insertar datos programáticamente.

/**
 * Generate XML File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .xml
        wb.SaveAsXml("sample.xml");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate XML File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .xml
        wb.SaveAsXml("sample.xml");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
$vbLabelText   $csharpLabel

Puedes leer más sobre convertir hojas de cálculo de Excel y archivos programáticamente para su uso en proyectos C#.

La biblioteca IronXL también ofrece una amplia gama de características para interactuar con archivos Excel, tales como formateo de datos de celda, fusión de celdas, inserción de funciones matemáticas, e incluso gestión de gráficos.


Tutorial de acceso rápido

### Documentación del generador IronXL

Lea la documentación completa sobre cómo IronXL genera archivos en todos los formatos de Excel necesarios para su proyecto C#.

Documentación del generador IronXL
Documentation related to Tutorial de acceso rápido

Preguntas Frecuentes

¿Cómo puedo generar un archivo de Excel en C#?

Puedes generar un archivo de Excel en C# usando IronXL. Comienza creando un WorkBook y Hoja de Trabajo, inserta tus datos usando el Sistema de Direccionamiento de Celdas y guarda el archivo con el formato deseado usando los métodos de IronXL.

¿Cuáles son los pasos para manipular archivos de Excel programáticamente en C#?

Para manipular archivos de Excel programáticamente en C#, instala IronXL mediante el gestor de paquetes NuGet, crea un WorkBook y Hoja de Trabajo, usa el código C# para insertar y manipular datos, y guarda los cambios en el formato de archivo que prefieras.

¿Cómo puedo guardar un archivo de Excel como JSON usando C#?

Usando IronXL, puedes guardar un archivo de Excel como JSON creando un WorkBook y Hoja de Trabajo, agregando los datos necesarios y empleando el método SaveAsJson para exportar el archivo en formato JSON.

¿Puedo convertir un archivo de Excel a CSV usando C#?

Sí, IronXL te permite convertir un archivo de Excel a CSV en C#. Necesitas cargar el archivo de Excel en un WorkBook, procesarlo según sea necesario y usar el método SaveAsCsv para exportarlo.

¿A qué formatos puedo exportar datos de Excel usando C#?

Usando IronXL, puedes exportar datos de Excel a varios formatos como XLSX, CSV, TSV, JSON y XML. Esta versatilidad es beneficiosa para diferentes necesidades de manejo de datos en proyectos de C#.

¿Cómo instalo IronXL para operaciones de Excel en C#?

Para instalar IronXL para operaciones de Excel en C#, usa el gestor de paquetes NuGet en Visual Studio con el comando dotnet add package IronXl.Excel.

¿Es adecuado IronXL para aplicaciones empresariales que involucran archivos de Excel?

IronXL es altamente adecuado para aplicaciones empresariales ya que simplifica el proceso de generar y manipular archivos de Excel programáticamente, haciéndolo eficiente para automatizar tareas de procesamiento de datos.

¿Puedo usar IronXL gratis durante el desarrollo?

IronXL es gratis para usar con fines de desarrollo. Sin embargo, se requiere una licencia cuando estés listo para desplegar o usar la biblioteca en un entorno de producción.

¿Cómo puedo estilizar celdas al generar archivos de Excel en C#?

Al usar IronXL, puedes estilizar celdas en archivos de Excel generados configurando propiedades como tamaño de fuente, color y estilos a través de los métodos proporcionados en la biblioteca.

¿Puedo generar archivos XML a partir de datos de Excel en C#?

Sí, puedes generar archivos XML a partir de datos de Excel usando IronXL. Después de preparar tus datos en un WorkBook y Hoja de Trabajo, usa el método SaveAsXml para exportar los datos en formato XML.

Jordi Bardia
Ingeniero de Software
Jordi es más competente en Python, C# y C++. Cuando no está aprovechando sus habilidades en Iron Software, está programando juegos. Compartiendo responsabilidades para pruebas de productos, desarrollo de productos e investigación, Jordi agrega un valor inmenso a la mejora continua del producto. La experiencia variada lo mantiene ...
Leer más

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me