Saltar al pie de página
USANDO IRONWORD
Tutorial de Cómo abrir Documento Word en C#

C# Abrir Documento Word

Los documentos de la aplicación Word son fundamentales para varios aspectos de la comunicación profesional y personal. La capacidad de manipular e interactuar con archivos de documentos de Microsoft Word de manera programática es esencial para los desarrolladores que buscan automatizar tareas o integrar el procesamiento de documentos en sus aplicaciones. Para poder trabajar con un documento de Microsoft Word de manera programática en C#, hay muchas bibliotecas de documentos disponibles. Una de estas bibliotecas es IronWord, una robusta biblioteca C# para Word DOCX de Iron Software que simplifica el trabajo con documentos de Word en aplicaciones .NET.

En este artículo, exploraremos la robusta IronWord - La Biblioteca C#, sus características, la colección de documentos Word que abre y la lectura de datos de ella.

Cómo abrir una colección de documentos de Word en C

  1. Crea una aplicación de consola en Visual Studio
  2. Instala la biblioteca IronWord C# DOCX
  3. Abra el documento de Word utilizando la clase WordDocument
  4. Recorra cada párrafo utilizando la clase Paragraph
  5. Ejecuta TextRuns en cada Párrafo
  6. Muestre el contenido o guarde con el método SaveAs

IronWord - La biblioteca DOCX de C

IronWord es una biblioteca de C# DOCX con muchas funciones, desarrollada por Iron Software. Ofrece una API fácil de usar que permite a los desarrolladores trabajar con documentos de Word en sus aplicaciones .NET con facilidad. Ya sea creando nuevos documentos de Word, editando existentes o extrayendo contenido, IronWord proporciona un conjunto completo de herramientas para simplificar el proceso.

Conjunto de características

1. Compatibilidad y soporte multiplataforma

IronWord está diseñado para ser versátil, soportando varias versiones de .NET, incluyendo .NET 8, 7, 6, Framework, Core y Azure. Los desarrolladores pueden utilizarlo en diversas plataformas como Windows, Linux, macOS, iOS, Android, haciéndolo adaptable a una amplia gama de escenarios de desarrollo de aplicaciones .NET.

2. Manipulación de documentos

Las capacidades de IronWord se extienden más allá de la simple creación de documentos. Permite la manipulación intrincada de documentos, incluyendo formato de texto y párrafo, integración de imágenes y formas, creación de tablas y mucho más. Esta versatilidad hace que IronWord sea adecuado para una variedad de aplicaciones donde el control preciso sobre la estructura y el contenido de los documentos es esencial.

3. Sin dependencias de Microsoft Office

Una característica notable de IronWord es su independencia de instalaciones de Microsoft Office o Word Interop. Esto significa que no se requiere una aplicación de Word. Los desarrolladores pueden aprovechar su funcionalidad sin preocuparse por dependencias adicionales, asegurando un proceso de desarrollo más fluido y eficiente.

4. Facilidad de uso

La biblioteca está diseñada con una API fácil de usar, permitiendo a los desarrolladores integrar funcionalidad de procesamiento de documentos de Word en sus proyectos .NET sin problemas. Además, IronWord elimina la necesidad de instalar Microsoft Office o Word Interop, asegurando una experiencia de desarrollo sin inconvenientes.

Requisitos previos

Antes de adentrarse en el mundo de IronWord, asegúrese de tener los siguientes requisitos previos:

  • Visual Studio: Asegúrese de tener una instalación funcional de Visual Studio, un entorno de desarrollo integrado popular para el desarrollo .NET. Puede descargarlo desde aquí.
  • IronWord: Necesitas descargar la biblioteca para utilizar sus características. Puedes descargar el paquete de NuGet directamente desde aquí.

Configuración del entorno

Para comenzar, abre Visual Studio, y verás la pantalla de bienvenida.

1. Crear una nueva aplicación de consola .NET Framework

Haz clic en "Crear un nuevo proyecto". Busca "Aplicación de Consola (.NET Framework)", selecciónalo de la lista y haz clic en "Siguiente". Nombra tu proyecto y haz clic en "Crear". Visual Studio configurará una nueva aplicación de consola .NET Framework con una plantilla básica, que incluye un método Main como punto de entrada.

Configuración de Nuevo Proyecto

2. Instale IronWord mediante el Administrador de paquetes NuGet

En Visual Studio, navega al menú "Herramientas", selecciona "Administrador de Paquetes NuGet", y luego "Administrar Paquetes NuGet para la Solución". En la ventana de NuGet, ve a la pestaña "Examinar", escribe "IronWord" en el cuadro de búsqueda y presiona enter. Selecciona el paquete de los resultados, asegúrate de que tu proyecto de aplicación de consola esté marcado a la derecha y haz clic en "Instalar". Esto agregará las referencias necesarias para usar IronWord dentro de tu aplicación C#. Ahora estás listo para comenzar a usar IronWord para trabajar con documentos de Word.

IronWord

3. Agregar referencia a IronWord en el código:

En su archivo de código de C#, agregue la siguiente declaración de uso en el archivo Program.cs para referenciar IronWord:

using IronWord;
using IronWord;
Imports IronWord
$vbLabelText   $csharpLabel

Pasos para abrir un documento de Word y leer su contenido

Ahora que nuestro proyecto está configurado, siga estos pasos para abrir un documento de Word y leer sus contenidos usando IronWord:

  1. Cargar un Documento Existente:
// Load an existing Word document file
WordDocument doc = new WordDocument("existing_document.docx");
// Load an existing Word document file
WordDocument doc = new WordDocument("existing_document.docx");
' Load an existing Word document file
Dim doc As New WordDocument("existing_document.docx")
$vbLabelText   $csharpLabel

En este paso, creamos una instancia de la clase WordDocument de la biblioteca IronWord. Usamos el constructor que toma la ruta a un documento de Word de entrada existente (existing_document.docx). Esto inicializa el objeto doc, representando el documento de Word cargado desde el archivo de entrada.

Archivo de Entrada:

Input

  1. Leer y Manipular Contenido:

El siguiente código ayuda a leer el contenido de texto del archivo de documento abierto:

// Access paragraphs and text runs
foreach (Paragraph paragraph in doc.Paragraphs)
{
    foreach (TextRun textRun in paragraph.TextRuns)
    {
        // Access the text content of each text run
        string content = textRun.Text;
        // Display content on the console
        Console.WriteLine(content);
    }
}
// Access paragraphs and text runs
foreach (Paragraph paragraph in doc.Paragraphs)
{
    foreach (TextRun textRun in paragraph.TextRuns)
    {
        // Access the text content of each text run
        string content = textRun.Text;
        // Display content on the console
        Console.WriteLine(content);
    }
}
' Access paragraphs and text runs
For Each paragraph As Paragraph In doc.Paragraphs
	For Each textRun As TextRun In paragraph.TextRuns
		' Access the text content of each text run
		Dim content As String = textRun.Text
		' Display content on the console
		Console.WriteLine(content)
	Next textRun
Next paragraph
$vbLabelText   $csharpLabel

Aquí, iteramos a través de los párrafos y ejecuciones de texto dentro del documento de Word cargado (doc). El bucle foreach nos permite recorrer cada párrafo, y anidado dentro de él, cada ejecución de texto. Para cada textRun, podemos acceder al contenido de texto usando textRun.Text. Este es el punto donde puedes realizar cualquier manipulación deseada, como extraer información o modificar el contenido de texto de manera programática.

  1. Mostrar Contenidos y Salida:
// Display contents
Console.WriteLine(content);
// Display contents
Console.WriteLine(content);
' Display contents
Console.WriteLine(content)
$vbLabelText   $csharpLabel

En el segundo bucle foreach del paso anterior, estamos mostrando los contenidos visibles de palabras en la pantalla de salida de la consola. También podemos guardar alguna parte del documento abierto como un nuevo documento:

// Method to save changes to the document
doc.SaveAs("modified_document.docx");
// Method to save changes to the document
doc.SaveAs("modified_document.docx");
' Method to save changes to the document
doc.SaveAs("modified_document.docx")
$vbLabelText   $csharpLabel

El código de programa completo es el siguiente:

using IronWord;
using IronWord.Models;

namespace IronWordExample
{
    // Main program class
    class Program
    {
        // Main method - Entry point of the application
        public static void Main(string[] args)
        {
            // Load existing Word doc file
            WordDocument doc = new WordDocument("existing_document.docx");

            // Access paragraphs and text runs
            foreach (Paragraph paragraph in doc.Paragraphs)
            {
                foreach (TextRun textRun in paragraph.TextRuns)
                {
                    // Access text content
                    string content = textRun.Text;
                    // Display Contents
                    Console.WriteLine(content);
                }
            }

            // Save changes to the document
            doc.SaveAs("modified_document.docx");
        }
    }
}
using IronWord;
using IronWord.Models;

namespace IronWordExample
{
    // Main program class
    class Program
    {
        // Main method - Entry point of the application
        public static void Main(string[] args)
        {
            // Load existing Word doc file
            WordDocument doc = new WordDocument("existing_document.docx");

            // Access paragraphs and text runs
            foreach (Paragraph paragraph in doc.Paragraphs)
            {
                foreach (TextRun textRun in paragraph.TextRuns)
                {
                    // Access text content
                    string content = textRun.Text;
                    // Display Contents
                    Console.WriteLine(content);
                }
            }

            // Save changes to the document
            doc.SaveAs("modified_document.docx");
        }
    }
}
Imports IronWord
Imports IronWord.Models

Namespace IronWordExample
	' Main program class
	Friend Class Program
		' Main method - Entry point of the application
		Public Shared Sub Main(ByVal args() As String)
			' Load existing Word doc file
			Dim doc As New WordDocument("existing_document.docx")

			' Access paragraphs and text runs
			For Each paragraph As Paragraph In doc.Paragraphs
				For Each textRun As TextRun In paragraph.TextRuns
					' Access text content
					Dim content As String = textRun.Text
					' Display Contents
					Console.WriteLine(content)
				Next textRun
			Next paragraph

			' Save changes to the document
			doc.SaveAs("modified_document.docx")
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Output

Para explorar más funcionalidades que IronWord puede realizar, por favor visite esta página de ejemplos de código.

Conclusión

En este artículo, exploramos las capacidades de IronWord, una robusta biblioteca de C# DOCX que simplifica el proceso de abrir y manipular documentos de Word de manera programática. Al proporcionar un conjunto de características ricas y eliminar dependencias de software externo, IronWord capacita a los desarrolladores para integrar sin problemas el procesamiento de documentos en sus aplicaciones .NET. Ya sea que esté automatizando tareas relacionadas con documentos o mejorando experiencias, IronWord resulta ser una herramienta valiosa en su conjunto de herramientas .NET.

Para obtener más información y comenzar a incorporar IronWord en sus nuevos proyectos de aplicaciones, visite la página de documentación.

IronWord ofrece una prueba gratuita para probar su funcionalidad completa. Esto le ayuda a tomar una decisión informada antes de adquirirlo. Su licencia Lite comienza desde $799 y se pueden encontrar más detalles en esta página de licencias.

Prueba IronWord gratis desde aquí.

Preguntas Frecuentes

¿Cómo puedo abrir un documento de Microsoft Word en C#?

Puedes abrir un documento de Microsoft Word en C# usando la biblioteca IronWord. Primero, configura una aplicación de consola en Visual Studio, instala IronWord a través del Administrador de Paquetes NuGet, y usa la clase WordDocument para cargar tus archivos de Word.

¿Cuáles son los beneficios de usar IronWord para el procesamiento de documentos?

IronWord ofrece capacidades extensas de manipulación de documentos, soporta múltiples versiones y plataformas de .NET, y no requiere Microsoft Office o Word Interop. Permite a los usuarios formatear texto, integrar imágenes y crear tablas eficientemente.

¿Cómo puedo manipular el contenido de un documento de Word usando C#?

Con IronWord, puedes manipular el contenido del documento de Word leyendo párrafos, recorriendo ejecuciones de texto y modificándolos. La biblioteca proporciona métodos para formatear texto e integrar imágenes sin problemas.

¿Requiere IronWord alguna instalación de software adicional?

No, IronWord no requiere instalaciones de software adicionales como Microsoft Office o Word Interop. Es una biblioteca independiente que funciona de manera autónoma dentro de tus aplicaciones .NET.

¿Cómo guardo las modificaciones hechas a un documento de Word en C#?

Puedes guardar las modificaciones hechas a un documento de Word usando IronWord aprovechando el método SaveAs. Esto te permite exportar el documento editado como un nuevo archivo.

¿En qué plataformas se puede usar IronWord?

IronWord es compatible con una variedad de plataformas, incluidas Windows, Linux, macOS, iOS y Android, ya que es compatible con .NET 8, 7, 6, Framework, Core y Azure.

¿Cómo instalo IronWord en mi proyecto?

Para instalar IronWord, utiliza el Administrador de Paquetes NuGet en Visual Studio. Busca 'IronWord' y agrégalo a tu proyecto para empezar a trabajar con documentos de Word.

¿Puedo probar IronWord antes de comprar una licencia?

Sí, IronWord ofrece una prueba gratuita que te permite probar su funcionalidad. Puedes explorar más sobre la prueba y las opciones de licencia en el sitio web de Iron Software.

¿Dónde puedo encontrar más ejemplos para usar IronWord?

Para obtener más ejemplos de código y documentación detallada sobre el uso de IronWord, puedes visitar el sitio web de Iron Software, que proporciona recursos integrales para ayudarte a comenzar.

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