O XML está entre os formatos estruturados recomendados pelo W3C, comumente usados para armazenar e transmitir dados. É amplamente exigido pelos desenvolvedores para editar os dados XML armazenados com os aplicativos. Para facilitar o requisito de edição, este artigo orienta sobre como editar os dados do arquivo XML usando C#.
API .NET para editar arquivos XML
GroupDocs.Editor fornece soluções de edição de documentos e APIs para editar uma grande lista de diferentes formatos de arquivo. É a API .NET que pode ser usada junto com editores externos para edição visual. Neste artigo, usaremos GroupDocs.Editor for .NET para editar dados XML dentro do aplicativo .NET.
Para baixar o instalador de DLLs ou MSI, visite a seção de downloads ou instale a API em seu aplicativo .NET via NuGet.
PM> Install-Package GroupDocs.Editor
Como editar arquivos XML usando C#
Indo direto ao objetivo, vamos modificar os dados XML substituindo um valor por outro. A seguir estão as etapas para editar ou atualizar o arquivo XML usando C#.
- Carregue o arquivo de dados XML usando a classe Editor.
- Prepare as opções de edição de XML usando a classe XmlEditOptions.
- Para edição, crie o EditableDocument como conteúdo de origem usando o método Edit e as opções de edição preparadas.
- No EditableDocument, obtenha o conteúdo original do arquivo XML usando o método GetContent.
- Atualizar valores no conteúdo XML.
- Agora crie um novo EditableDocument a partir do conteúdo XML atualizado usando o método FromMarkup.
- Para salvar o conteúdo atualizado em diferentes formatos, prepare opções de salvamento relevantes como WordProcessingSaveOptions ou TextSaveOptions.
- Salve os dados XML atualizados em qualquer formato usando o método Save.
O trecho de código C# a seguir mostra como editar o arquivo XML e atualizar os dados, depois salvá-lo em qualquer outro formato.
// Edite o arquivo XML atualizando valores usando C#
using (Editor editor = new Editor("path/data.xml"))
{
// Criar opções de edição XML
Options.XmlEditOptions editOptions = new XmlEditOptions();
editOptions.AttributeValuesQuoteType = QuoteType.DoubleQuote;
editOptions.RecognizeEmails = true;
editOptions.RecognizeUris = true;
editOptions.TrimTrailingWhitespaces = true;
// Configurações de documentos editáveis
using (EditableDocument beforeEdit = editor.Edit(editOptions))
{
// Edite o que for
string originalTextContent = beforeEdit.GetContent();
string updatedTextContent = originalTextContent.Replace("John", "Samuel");
List<IHtmlResource> allResources = beforeEdit.AllResources;
// Criar EditableDocument com conteúdo atualizado
using (EditableDocument afterEdit = EditableDocument.FromMarkup(updatedTextContent, allResources))
{
// Criar opções de salvamento do WordProcessing
Options.WordProcessingSaveOptions wordSaveOptions = new WordProcessingSaveOptions(WordProcessingFormats.Docx);
// Criar opções de salvamento de TXT
Options.TextSaveOptions txtSaveOptions = new TextSaveOptions();
txtSaveOptions.Encoding = System.Text.Encoding.UTF8;
// Salve dados XML editados em formato DOCX e TXT
editor.Save(afterEdit, "path/xmlData.docx", wordSaveOptions);
editor.Save(afterEdit, "path/xmlData.txt", txtSaveOptions);
}
}
}
Obtenha uma licença gratuita
Você pode obter uma licença temporária gratuita para usar a API sem as limitações de avaliação.
Conclusão
Para resumir, aprendemos a editar dados de arquivos XML programaticamente usando C#. Você pode explorar outros recursos do GroupDocs.Editor usando a documentação. Para esclarecer qualquer ambiguidade, entre em contato conosco no fórum.