Como ler um arquivo do Word usando C#
Na era atual, os documentos do Microsoft Word são sinônimos de trabalho de escritório e comunicação profissional e pessoal. Portanto, manipular programaticamente documentos Word é crucial para desenvolvedores que procuram automatizar tarefas para exibir aos usuários em suas aplicações. Embora existam muitas bibliotecas disponíveis, nem todas são tão robustas quanto as outras. No entanto, um contendor que se destaca dos demais é o IronWord. IronWord é uma biblioteca C# Word DOCX confiável e robusta, fácil de usar e entender, e que simplifica o trabalho com documentos Word.
Este artigo explorará como podemos utilizar rapidamente o IronWord para ler documentos Word com exemplos curtos.
How To Read a Word File Using C
-
Crie uma Aplicação de Console no Visual Studio
-
Instale a biblioteca IronWord C# DOCX
-
Crie um novo documento Word usando a classe WordDocument
-
Adicione texto ao documento Word
-
Percorra cada parágrafo utilizando a classe Paragraph
- Exiba o conteúdo
IronWord: A Biblioteca C# DOCX

IronWord é uma biblioteca flexível e escalável com uma API simples e fácil de usar que elimina a dificuldade de integrar documentos Word em aplicações. Quer você queira adicionar e integrar um documento Word de texto simples na sua aplicação ou criar tabelas e relatórios complexos para exibir aos usuários, o IronWord cobre tudo.
Aqui estão seus recursos mais notáveis:
-
Manipulação de Documentos: O IronWord permite que desenvolvedores manipulem documentos Word com facilidade. Quer os usuários queiram inserir parágrafos de texto ou estruturas mais complexas, como tabelas e imagens, o IronWord pode fazer tudo.
-
Suporte e Compatibilidade Multiplataforma: O IronWord é projetado para ser flexível e oferece suporte a desenvolvedores em várias plataformas. Ele suporta várias versões do .NET Core (8, 7, 6, 5 e 3.1+), .NET Standard (2.0+), .NET Framework (4.6.2+) e até mesmo Azure. Além disso, os desenvolvedores podem utilizar o IronWord em diferentes plataformas e sistemas, incluindo, mas não se limitando a, Windows, Linux, macOS e Android. Ele abrange as plataformas mais comuns e permite que os desenvolvedores construam aplicações multiplataforma rapidamente.
-
Independência do Microsoft Office: Um problema comum ao integrar documentos Word em aplicações .NET é que bibliotecas populares como Interop exigem uma instalação licenciada do Microsoft Office. No entanto, o IronWord alivia esse problema, sendo independente dessa restrição. Os desenvolvedores podem aproveitar totalmente o poder dos documentos Word sem serem restringidos pela licença e instalação do Microsoft Word.
-
Opções de Formatação: IronWord oferece amplo suporte para formatação e estilo, permitindo que os desenvolvedores tornem o documento único. Os desenvolvedores podem aplicar fontes ao seu texto, cores, alinhamentos e outros formatos complexos, como estilos de tabela.
- Facilidade de Uso e Suporte Extensivo: Juntamente com uma API fácil de entender e chamadas de métodos diretas, o IronWord também fornece referências de API de extensão e exemplos de código para ajudar desenvolvedores a determinar a maneira mais ideal de utilizar o IronWord.
Criando um Novo Projeto de Console no Visual Studio
Antes de mergulharmos no exemplo, vamos começar criando um projeto de console em branco no Visual Studio.

Em seguida, fornecemos um nome e um local para salvar o projeto.

Em seguida, selecione o framework .NET que você usará. Neste exemplo, estarei usando .NET 8.0.

Após criar e configurar o novo projeto de console, vamos instalar nossa biblioteca de palavras C#, IronWord.
Instalando o IronWord
Existem duas maneiras de instalar o IronWord.
1. Instalando via Gerenciador de Pacotes NuGet
Para instalá-lo através do Gerenciador de Pacotes NuGet, clique em ferramentas e depois Manage NuGet Packages for Solution. Em seguida, procuramos por IronWord na barra de pesquisa e instalamos **IronWord**.

2. Instalando via Console do Gerenciador de Pacotes NuGet
Um método alternativo é instalá-lo via Console do Gerenciador de Pacotes NuGet. Para isso, execute o seguinte comando no console:
Install-Package IronWord
Chave de licença
Por favor, note que o IronWord não funciona sem uma chave de licença; você pode obter uma aqui como parte de um teste gratuito.
Após obter uma chave de teste, certifique-se de que esta variável esteja definida em seu projeto.
// Replace the license key variable with the trial key you obtained
IronWord.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";
// Replace the license key variable with the trial key you obtained
IronWord.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";
' Replace the license key variable with the trial key you obtained
IronWord.License.LicenseKey = "REPLACE-WITH-YOUR-KEY"
Reading Word Documents in C
Após instalar os pré-requisitos, demonstraremos a simplicidade de ler um documento do Microsoft Word usando IronWord no código a seguir.
Primeiro, importamos os namespaces necessários. Usando IronWord, criamos um novo documento e adicionamos texto de exemplo. Em seguida, acessamos os parágrafos e textos usando o objeto WordDocument para imprimir o texto dentro do documento do Word.
using IronWord;
using IronWord.Models;
#region Licensing
// Set the IronWord license key before using the IronWord functionalities
IronWord.License.LicenseKey = "YOUR-KEY-HERE";
#endregion
// Create text run with sample text
Text textRunExample = new Text("Sample text");
// Create a paragraph and add the text run to it
Paragraph paragraphExample = new Paragraph();
paragraphExample.AddChild(textRunExample);
// Create a new Word document with the paragraph
WordDocument doc = new WordDocument(paragraphExample);
// Export the document as a DOCX file
doc.SaveAs("document.docx");
// Access paragraphs and text runs within the document
foreach (Paragraph paragraph in doc.Paragraphs)
{
foreach (Text textRun in paragraph.Texts)
{
// Access text content
string content = textRun.Text;
// Display the content to the console
Console.WriteLine(content);
}
}
using IronWord;
using IronWord.Models;
#region Licensing
// Set the IronWord license key before using the IronWord functionalities
IronWord.License.LicenseKey = "YOUR-KEY-HERE";
#endregion
// Create text run with sample text
Text textRunExample = new Text("Sample text");
// Create a paragraph and add the text run to it
Paragraph paragraphExample = new Paragraph();
paragraphExample.AddChild(textRunExample);
// Create a new Word document with the paragraph
WordDocument doc = new WordDocument(paragraphExample);
// Export the document as a DOCX file
doc.SaveAs("document.docx");
// Access paragraphs and text runs within the document
foreach (Paragraph paragraph in doc.Paragraphs)
{
foreach (Text textRun in paragraph.Texts)
{
// Access text content
string content = textRun.Text;
// Display the content to the console
Console.WriteLine(content);
}
}
Imports IronWord
Imports IronWord.Models
#Region "Licensing"
' Set the IronWord license key before using the IronWord functionalities
IronWord.License.LicenseKey = "YOUR-KEY-HERE"
'#End Region
' Create text run with sample text
Dim textRunExample As New Text("Sample text")
' Create a paragraph and add the text run to it
Dim paragraphExample As New Paragraph()
paragraphExample.AddChild(textRunExample)
' Create a new Word document with the paragraph
Dim doc As New WordDocument(paragraphExample)
' Export the document as a DOCX file
doc.SaveAs("document.docx")
' Access paragraphs and text runs within the document
For Each paragraph As Paragraph In doc.Paragraphs
For Each textRun As Text In paragraph.Texts
' Access text content
Dim content As String = textRun.Text
' Display the content to the console
Console.WriteLine(content)
Next textRun
Next paragraph
Vamos explorar os métodos e parâmetros para ler arquivos Word do código acima.
-
Primeiro, criamos um objeto Text e atribuímos a ele a string "Texto de exemplo".
-
Em seguida, instanciamos um objeto Paragraph e adicionamos o "textRunExample" a ele.
-
Também instanciamos um objeto WordDocument, damos o nome de
WordDocument doc,e passamos oparagraphExamplepara ele criar um novo documento do Word contendo o parágrafo. -
O código salva o documento Word com o nome de arquivo "document.docx" para uso posterior.
-
Para acessar os parágrafos no documento Word que acabamos de criar, acessamos a propriedade "Paragraphs" do objeto WordDocument. A propriedade "Paragraphs" é uma lista. Portanto, chamamos um loop foreach para iterar por ela.
-
Para obter o texto dentro do parágrafo, acessamos a propriedade "Texts" de Paragraphs. Isso também retorna uma lista de Text.
- Finalmente, atribuímos o Text a uma variável de string chamada "content" e o imprimimos no console.
Saída do Console

Reading an existing Word document in C
No exemplo anterior, criamos um novo documento Word programaticamente e lemos seu conteúdo. Podemos seguir etapas similares para ler um documento Word existente fazendo algumas alterações no código.
Documento de Entrada

using IronWord;
using IronWord.Models;
#region Licensing
// Set the IronWord license key before using the IronWord functionalities
IronWord.License.LicenseKey = "YOUR-KEY-HERE";
#endregion
// Load an existing Word document
WordDocument doc = new WordDocument("existing_document.docx");
// Access paragraphs and text runs within the document
foreach (Paragraph paragraph in doc.Paragraphs)
{
foreach (Text textRun in paragraph.Texts)
{
// Access text content
string content = textRun.Text;
// Display the content to the console
Console.WriteLine(content);
}
}
using IronWord;
using IronWord.Models;
#region Licensing
// Set the IronWord license key before using the IronWord functionalities
IronWord.License.LicenseKey = "YOUR-KEY-HERE";
#endregion
// Load an existing Word document
WordDocument doc = new WordDocument("existing_document.docx");
// Access paragraphs and text runs within the document
foreach (Paragraph paragraph in doc.Paragraphs)
{
foreach (Text textRun in paragraph.Texts)
{
// Access text content
string content = textRun.Text;
// Display the content to the console
Console.WriteLine(content);
}
}
Imports IronWord
Imports IronWord.Models
#Region "Licensing"
' Set the IronWord license key before using the IronWord functionalities
IronWord.License.LicenseKey = "YOUR-KEY-HERE"
'#End Region
' Load an existing Word document
Dim doc As New WordDocument("existing_document.docx")
' Access paragraphs and text runs within the document
For Each paragraph As Paragraph In doc.Paragraphs
For Each textRun As Text In paragraph.Texts
' Access text content
Dim content As String = textRun.Text
' Display the content to the console
Console.WriteLine(content)
Next textRun
Next paragraph
A principal diferença entre os dois exemplos é o parâmetro passado para o objeto WordDocument. Em vez de criar um novo documento, carregamos um arquivo Word existente nele. O restante é o mesmo que o outro exemplo.
Saída do Console

Conclusão

Ao longo dos exemplos, demonstramos como é simples usar a biblioteca IronWord para manipular e ler documentos Word programaticamente em C#. A flexibilidade e escalabilidade da biblioteca IronWord fazem dela uma ferramenta valiosa que permite aos desenvolvedores usar IronWord em exemplos práticos e reais, como preencher templates, gerar relatórios e processar documentos em lote. Entender como o Word integra-se com aplicações é valioso, pois oferece aos desenvolvedores mais soluções para seus problemas.
Além disso, os desenvolvedores podem testar os amplos recursos do IronWord por um período antes de comprar, pois oferece uma licença de teste gratuito. Junto com a facilidade de uso, o IronWord também vem com documentação completa e suporte 24/5 para desenvolvedores, aliviando o sofrimento constante que os desenvolvedores podem enfrentar diante da produção. Também oferecemos vários tutoriais e uma gama de exemplos de código para referência e ajudar você a começar com IronWord.
Após testar vários aspectos do IronWord usando uma licença de teste, você pode adquirir nossa licença de desenvolvedor Lite que começa em $599 e vai desde Lite até Professional. Por favor, consulte nossa página de licenciamento para mais informações.
Perguntas frequentes
Como posso ler um documento do Word usando C#?
Você pode usar o IronWord para ler um documento do Word em C#. Basta carregar o documento usando a classe WordDocument e, em seguida, iterar pelos parágrafos e trechos de texto para acessar e exibir o conteúdo.
Qual é uma biblioteca C# confiável para leitura de documentos do Word?
IronWord é uma biblioteca C# confiável, projetada para leitura e manipulação de documentos do Word. Ela fornece uma API intuitiva que simplifica a integração das funcionalidades de documentos do Word em aplicativos.
Preciso ter o Microsoft Office instalado para ler documentos do Word em C#?
Não, o IronWord não requer a instalação do Microsoft Office. Ele funciona de forma independente, permitindo que você manipule documentos do Word sem precisar de uma versão licenciada do Office.
Como posso instalar uma biblioteca C# para ler documentos do Word no Visual Studio?
Você pode instalar o IronWord através do Gerenciador de Pacotes NuGet no Visual Studio, pesquisando por 'IronWord' e selecionando 'Instalar', ou usando o Console do Gerenciador de Pacotes NuGet com o comando Install-Package IronWord .
Quais plataformas são suportadas pelo IronWord para manipulação de documentos do Word?
O IronWord oferece suporte a diversas plataformas, incluindo .NET Core (8, 7, 6, 5 e 3.1+), .NET Standard (2.0+), .NET Framework (4.6.2+) e Azure, e é compatível com Windows, Linux, macOS e Android.
Posso manipular documentos do Word existentes usando uma biblioteca C#?
Sim, o IronWord permite ler e modificar documentos do Word, tanto novos quanto existentes, de forma programática, oferecendo controle total sobre o conteúdo e a estrutura do documento.
Existe algum período de teste gratuito disponível para o IronWord?
Sim, o IronWord oferece uma licença de avaliação gratuita. Os desenvolvedores podem usar essa avaliação para explorar seus recursos e avaliar sua adequação aos seus projetos antes de adquirir uma licença completa.
Como posso converter documentos do Word para outros formatos usando C#?
Você pode usar o IronWord para converter documentos do Word para vários formatos, aproveitando sua API para exportar documentos para formatos como PDF, HTML e outros, embora os detalhes da conversão possam variar.
Quais são alguns casos de uso comuns para o IronWord em aplicações C#?
O IronWord é comumente usado para tarefas como preenchimento de modelos, geração de relatórios, processamento em lote de documentos e integração de funcionalidades de documentos do Word em aplicativos .NET.
Quais opções de suporte estão disponíveis para usuários do IronWord?
A IronWord oferece suporte 24 horas por dia, 5 dias por semana, além de documentação completa, tutoriais e exemplos de código para auxiliar os desenvolvedores a utilizarem a biblioteca de forma eficaz.



