繁体   English   中英

如何以编程方式打开 TSV 文件并将其保存为 XLSX 文件?

[英]How do I programmatically open a TSV file and save it as an XLSX file?

我将不胜感激任何指向我可以使用的文档或 API 调用的指针。

基本上,我希望有某种方法可以调用 Excel 进行转换,尽管我还没有找到适用于 Excel 2010 的任何解决方案。

我正在使用 .NET 框架。

我在几个项目中使用 LINQ to CSV 库来加载和操作 CSV、TSV 等文件。

至于创建 Office 文档,如果您想要轻松转换,则必须为此付费。 它只真正用于商业应用程序,所以图书馆作者知道这是有市场的。

也就是说,那里有一些免费的库,我听说过这个用于编辑 Excel 文件的好东西:

Excel 可以很好地处理 CSV 文件,并且是未自定义 Excel 安装的系统上的默认编辑器。 我几乎在所有需要 Excel 文件的情况下都使用 csv 文件,并且我与一些非常不精通技术的用户一起工作!

与转换为 xlsx 相比,将 TSV 转换为 CSV 是微不足道的 - 我用于处理平面文件的最佳库之一是Generic Parser ,它可以读取和写入由任何字符分隔的文件(以及许多其他内容)

您可以尝试使用GroupDocs.Conversion REST API进行 TSV 到 Excel 或 Excel 到 TSV 的转换。 您可以通过任何 REST 客户端或 GroupDocs.Conversion Cloud SDK for .NET 使用它。 请注意,它是付费 API,但其免费计划每月提供 150 次免费 API 调用。

PS:我是 GroupDocs 的开发布道者。

// Get Client Id and Client Key from https://dashboard.groupdocs.cloud/
var configuration = new GroupDocs.Conversion.Cloud.Sdk.Client.Configuration(ClientId, ClientKey);
var fileApi = new GroupDocs.Conversion.Cloud.Sdk.Api.FileApi(configuration);
var convertApi = new ConvertApi(configuration);

// Convert TSV to XLSX
var format = "xlsx";
var testFile = "C:/Temp/sample.tsv";

var request = new ConvertDocumentDirectRequest(format, File.OpenRead(testFile));
var result = convertApi.ConvertDocumentDirect(request);

// Save output to local drive
var fileStream = System.IO.File.Create("C:/Temp/sample.xlsx");
result.CopyTo(fileStream);

我已经使用 Office 的 COM 互操作做了很多这样的事情。 我的建议是查看以下链接:

http://msdn.microsoft.com/en-us/library/dd264733.aspx

它应该让你启动并运行它。 如果您有任何具体问题,请告诉我。

您可以尝试使用开源库EPPlus来生成 excel 文件。 它比完整的 Excel 应用程序更容易部署。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM