El CSV(Valores Separados por Comas) es un formato de estructura de datos tabular ligero, ampliamente utilizado para el almacenamiento y intercambio de datos. Sin embargo, cuando necesitas una representación estructurada y jerárquica, el XML(Lenguaje de Marcado Extensible) se convierte en una mejor opción, especialmente en flujos de trabajo de datos empresariales, API y sistemas heredados.
Este artículo explica cómo convertir CSV a XML en C# .NET. Aprenderás cómo cargar un archivo CSV, llamar a la API para exportarlo como XML y descargar la salida convertida.
- Por qué convertir CSV a XML en .NET?
- API de procesamiento de CSV y XML
- Exportar CSV a XML en C#
- Convertir CSV a XML usando el comando cURL
- Prueba el Convertidor de CSV a XML en línea gratuito.
¿Por qué convertir CSV a XML en .NET?
Mientras que CSV es simple para datos planos, XML ofrece mayor flexibilidad y compatibilidad para sistemas que requieren estructuras jerárquicas o ricas en metadatos. Automatizar la conversión de CSV a XML en .NET ayuda a los desarrolladores a optimizar los flujos de trabajo de transformación e integración de datos a través de plataformas.
API de procesamiento de CSV y XML
Aspose.Cells Cloud SDK for .NET permite a los desarrolladores manipular y convertir archivos de Excel y CSV en una variedad de formatos, incluidos XML, [JSON][], y HTML. Funciona completamente a través de APIs REST, asegurando que no hay dependencia de Microsoft Excel.
Para instalar el SDK, utiliza el siguiente comando:
Install-Package Aspose.Cells-Cloud
Entonces, regístrate para obtener una cuenta gratuita de Aspose Cloud desde el Aspose.Cloud Dashboard para obtener tu ID de cliente y secreto de cliente para la autenticación.
Exportar CSV a XML en C#
Aquí hay un ejemplo en C# que demuestra cómo convertir CSV a XML utilizando Aspose.Cells Cloud SDK.
Paso 1: Inicializa la API:
var clientId = "YOUR_CLIENT_ID";
var clientSecret = "YOUR_CLIENT_SECRET";
var cellsApi = new CellsApi(clientId, clientSecret);
Paso 2: Suba el archivo CSV al almacenamiento en la nube:
var fileName = "sample.csv";
using (var fileStream = System.IO.File.OpenRead(fileName))
{
var uploadResponse = cellsApi.UploadFile("input/" + fileName, fileStream);
}
Paso 3: Convertir CSV a formato XML:
var saveOptions = new SaveOptions { SaveFormat = "XML" };
var request = new PostWorkbookSaveAsRequest(
name: "sample.csv",
newfilename: "output/result.xml",
saveOptions: saveOptions,
isAutoFitRows: true,
isAutoFitColumns: true
);
var response = cellsApi.PostWorkbookSaveAs(request);
// Para más ejemplos, por favor visita https://github.com/aspose-cells-cloud/aspose-cells-cloud-dotnet
// Obtén las credenciales del cliente de https://dashboard.aspose.cloud/
string clientSecret = "XXXXXXXX";
string clientID = "XXXXX-XXXX-XXXXX-XXXXXX";
// crear una instancia de CellsApi pasando ClientID y ClientSecret
CellsApi cellsInstance = new CellsApi(clientID, clientSecret);
try
{
// Leer el archivo CSV de la unidad local
using (var inputFile = System.IO.File.OpenRead(input.csv))
{
// subir CSV al almacenamiento en la nube
cellsInstance.UploadFile("input.csv", inputFile);
// CSV to XML conversion request
GetWorkbookRequest requst = new GetWorkbookRequest("input.csv","XML",null,null, outPath:"myResultant.xml");
// iniciar la conversión de CSV a XML
cellsInstance.GetWorkbook(requst);
// print success message if the conversion is successful
if (response != null && response.Equals("OK"))
{
Console.WriteLine("The CSV successfully exported to XML format !");
Console.ReadKey();
}
}
}
catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
Vista previa de la conversión de CSV a XML usando .NET Cloud SDK.
Convertir CSV a XML usando el comando cURL
También puedes realizar la conversión de CSV a XML utilizando comandos cURL directamente desde la terminal.
Paso 1: Generar token de acceso:
curl -v "https://api.aspose.cloud/connect/token" \
-X POST -d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Paso 2: Ejecutar la conversión de CSV a XML:
curl -v "https://api.aspose.cloud/v3.0/cells/{sourceFile}/SaveAs?newfilename={resultantFile}&isAutoFitRows=true&isAutoFitColumns=true&checkExcelRestriction=false" \
-X POST -H "accept: application/json" \
-H "authorization: Bearer {ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d "{ \"SaveFormat\": \"XML\", \"ClearData\": true, \"CreateDirectory\": true, \"EnableHTTPCompression\": true, \"RefreshChartCache\": true, \"SortNames\": true, \"ValidateMergedAreas\": true}"
Prueba el convertidor en línea gratuito de CSV a XML.
Puedes experimentar la conversión en acción utilizando nuestro conversor gratuito CSV to XML Online Converter impulsado por Aspose.Cells Cloud.
Aplicación gratuita en línea para convertir CSV a XML impulsada por Aspose.Cells Cloud.
Recursos Útiles
Preguntas Frecuentes (FAQs)
Q1: ¿Puedo convertir múltiples archivos CSV a XML automáticamente? Sí. Puedes automatizar las conversiones de múltiples archivos iterando sobre ellos en tu aplicación C# e invocando la API para cada archivo.
Q2: ¿Aspose.Cells Cloud soporta el formato durante la conversión de CSV a XML? Sí, mantiene la integridad y la estructura de los datos, asegurando una salida XML correctamente formateada.
Q3: ¿Puedo convertir XML de nuevo a CSV usando Aspose.Cells Cloud? Absolutamente. Puede especificar el formato de guardado como “CSV” al convertir de XML para realizar la conversión inversa.
Q4: ¿Qué tan rápido es el proceso de conversión de CSV a XML? Normalmente se completa en segundos, dependiendo del tamaño del archivo y la conexión a Internet.
Conclusión
Convertir archivos CSV a formato XML es simple con Aspose.Cells Cloud SDK para .NET. La API ofrece una conversión confiable, rápida y escalable sin necesidad de Excel. Ya sea que esté construyendo herramientas de automatización o flujos de trabajo de datos empresariales, este SDK garantiza una conversión fluida y precisa de CSV a XML en la nube.
Simplifique sus procesos de intercambio de datos y comience hoy con una cuenta de prueba gratuita.