CSV e XML estão entre os formatos de arquivo mais populares usados pelos desenvolvedores. Esses formatos são normalmente usados para armazenar e trocar dados dentro e entre aplicativos. Muitas vezes é necessário converter um formato em outro antes de armazenar ou transmitir as informações. Neste artigo, você encontrará como converter programaticamente o arquivo CSV (valores separados por vírgula) em formato XML usando C#.

Converter CSV para XML usando CSharp

O artigo aborda os seguintes tópicos:

API .NET para conversão de CSV para XML

GroupDocs.Conversion fornece APIs que permitem a conversão de arquivos CSV e XML. Neste artigo, usaremos a API .NET do GroupDocs.Conversion para converter os dados do formato CSV em formato XML usando C#. Além disso, a API suporta muitos outros formatos de arquivo para conversão, como documentos de processamento de texto, planilhas, apresentações, eBooks, imagens etc.

Você pode baixar o instalador DLLs ou MSI da seção de downloads ou instalar a API em seu aplicativo .NET via NuGet.

PM> Install-Package GroupDocs.Conversion

Converter CSV para XML em C#

Os arquivos CSV podem ser visualizados e editados visualmente usando editores como o MS Excel. A imagem mostra os dados CSV que usei para a conversão. Existem muitos conversores de CSV para XML disponíveis online, no entanto, o código mencionado nesta seção pode capacitar seus aplicativos .NET com essa conversão simples.

Arquivo de amostra CSV aberto no Excel

As etapas a seguir orientam você a converter os dados fornecidos do formato CSV para o formato XML.

  • Carregue o arquivo CSV usando a classe Converter.
  • Defina o formato de conversão como XML usando DataConvertOptions.
  • Chame o método Convert para obter os dados do formato XML do arquivo CSV carregado.

O código-fonte a seguir converte o arquivo CSV para o formato XML usando C#.

// Converta os dados CSV para o formato XML usando C#
using (Converter converter = new Converter(@"path/sample.csv"))
{
    DataConvertOptions options = new DataConvertOptions
    {
        Format = DataFileType.Xml
    };
    converter.Convert(@"path/CSV-to-XML.xml", options);
}

A saída do código acima é a seguinte. Estou compartilhando a parte do arquivo XML para você ter uma ideia da saída XML.

<DocumentElement>
  <Sheet1>
    <Employee>David</Employee>
    <Quarter>1</Quarter>
    <Product>Maxilaku</Product>
    <Continent>Asia</Continent>
    <Country>China</Country>
    <Sale>2000</Sale>
  </Sheet1>
  <Sheet1>
    <Employee>David</Employee>
    ...
  </Sheet1>
  <Sheet1>
    ...
  </Sheet1>
</DocumentElement>

Obtenha uma licença de API 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, discutimos a conversão de dados CSV em formato XML dentro dos aplicativos .NET usando C#. Para criar seu próprio aplicativo de conversão, você pode aprender mais sobre a Conversion Automation .NET API usando a documentação. O melhor é experimentar os exemplos disponíveis no GitHub. Contacte-nos para qualquer questão através do fórum.

Veja também