CSV(逗号分隔值)格式是一种轻量级的表格数据结构,广泛用于数据存储和交换。然而,当您需要结构化和层次化表示时,XML(可扩展标记语言)格式成为更好的选择,特别是在企业数据工作流程、API 和遗留系统中。

这篇文章解释了如何在 C# .NET 中将 CSV 转换为 XML。您将学习如何上传 CSV 文件,调用 API 将其导出为 XML,并下载转换后的输出。


为什么在 .NET 中将 CSV 转换为 XML?

虽然 CSV 对于扁平数据很简单,但 XML 为需要层次结构或富含元数据的系统提供了更大的灵活性和兼容性。在 .NET 中自动化 CSV 到 XML 的转换可以帮助开发人员简化跨平台的数据转换和集成工作流程。


CSV 和 XML 处理 API

Aspose.Cells Cloud SDK for .NET 使开发人员能够操作和转换 Excel 和 CSV 文件为多种格式,包括 XML、[JSON][] 和 HTML。它完全通过 REST API 运行,确保不依赖于 Microsoft Excel。

要安装SDK,请使用以下命令:

Install-Package Aspose.Cells-Cloud

然后,从 Aspose.Cloud Dashboard 注册一个免费的 Aspose Cloud 账户,以获取您的客户端 ID 和客户端密钥进行身份验证。


将 CSV 导出为 XML 在 C# 中

这里有一个 C# 示例,演示如何使用 Aspose.Cells Cloud SDK 将 CSV 转换为 XML。

步骤 1:初始化 API:

var clientId = "YOUR_CLIENT_ID";
var clientSecret = "YOUR_CLIENT_SECRET";
var cellsApi = new CellsApi(clientId, clientSecret);

步骤 2:将 CSV 文件上传到云存储:

var fileName = "sample.csv";
using (var fileStream = System.IO.File.OpenRead(fileName))
{
    var uploadResponse = cellsApi.UploadFile("input/" + fileName, fileStream);
}

第 3 步:将 CSV 转换为 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);
// 有关更多示例,请访问 https://github.com/aspose-cells-cloud/aspose-cells-cloud-dotnet

// 从 https://dashboard.aspose.cloud/ 获取客户端凭据。
string clientSecret = "XXXXXXXX";
string clientID = "XXXXX-XXXX-XXXXX-XXXXXX";

// 创建 CellsApi 实例,同时传递 ClientID 和 ClientSecret
CellsApi cellsInstance = new CellsApi(clientID, clientSecret);

try
{
    // 从本地驱动器读取输入的CSV文件
    using (var inputFile = System.IO.File.OpenRead(input.csv))
    {
        // 上传 CSV 到云存储
        cellsInstance.UploadFile("input.csv", inputFile);

        // CSV to XML conversion request
        GetWorkbookRequest requst = new GetWorkbookRequest("input.csv","XML",null,null, outPath:"myResultant.xml");
        // 开始 CSV 到 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);
}
CSV 转 XML 转换在 .NET 中

使用 .NET Cloud SDK 的 CSV 转 XML 转换预览。


将 CSV 转换为 XML 使用 cURL 命令

您还可以直接从终端使用 cURL 命令执行 CSV 到 XML 的转换。

第 1 步:生成访问令牌:

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"

步骤 2:执行 CSV 到 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}"

尝试免费的在线 CSV 转 XML 转换器

您可以使用我们的免费 CSV to XML Online Converter,该工具由 Aspose.Cells Cloud 提供支持,体验转换的实际操作。

CSV to XML 在线转换器

免费的在线 CSV 转 XML 转换器应用程序,由 Aspose.Cells Cloud 提供支持。


有用的资源


常见问题解答 (FAQs)

Q1: 我可以自动将多个 CSV 文件转换为 XML 吗? 是的。您可以通过在 C# 应用程序中遍历多个文件并为每个文件调用 API 来自动化转换。

Q2: Aspose.Cells Cloud 是否支持在 CSV 转 XML 转换期间进行格式化? 是的,它保持数据完整性和结构,确保正确格式化的 XML 输出。

Q3: 我可以使用 Aspose.Cells Cloud 将 XML 转换回 CSV 吗? 绝对可以。在从 XML 转换时,您可以指定保存格式为 "CSV" 以进行反向转换。

Q4: CSV 转 XML 的转换过程有多快? 它通常在几秒钟内完成,具体取决于文件大小和互联网连接。


结论

使用 Aspose.Cells Cloud SDK for .NET 将 CSV 文件转换为 XML 格式很简单。该 API 提供可靠、快速且可扩展的转换,无需使用 Excel。无论您是在构建自动化工具还是企业数据工作流程,该 SDK 都确保在云中实现无缝和准确的 CSV 到 XML 转换。

简化您的数据交换流程,并立即开始使用 免费试用账户


推荐文章