CSV(逗号分隔值)文件是包含用逗号分隔的数据的纯文本文件。它广泛用于将数据从一个应用程序导入或导出到另一个应用程序。在某些情况下,您可能需要在 CSV 和 Excel 之间进行转换。在本文中,您将学习如何在 C# 和 VB.NET 中使用 Spire.XLS for .NET 库以编程方式实现此功能。
安装 Spire.XLS for .NET
首先,您需要添加 Spire.XLS for .NET 包中包含的 DLL 文件作为 .NET 项目中的引用。DLL文件可以从此链接下载或通过 NuGet 安装。
PM> Install-Package Spire.XLS
在 C# 和 VB.NET 中将 Excel 转换为 CSV
以下是将 Excel 转换为 CSV 的步骤:
- 创建 Workbook 类的实例。
- 使用 Workbook.LoadFromFile() 方法加载 Excel 文件。
- 使用 Workbook.Worksheets[index] 属性通过索引获取所需的工作表。
- 使用 XlsWorksheet.SaveToFile() 方法将工作表保存为 CSV。您可以在以下重载的 SaveToFile() 方法中选择其一:
- SaveToFile(string fileName, string separator)
- SaveToFile(string fileName, string separator, Encoding encoding)
- SaveToFile(string fileName, string separator, bool retainHiddenData)
- C#
- VB.NET
using Spire.Xls;
using System.Text;
namespace ConvertAWorksheetToCsv
{
class Program
{
static void Main(string[] args)
{
//创建 Workbook 类的实例
Workbook workbook = new Workbook();
//加载Excel文件
workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Sample.xlsx");
//获取第一张工作表
Worksheet sheet = workbook.Worksheets[0];
//将工作表保存为CSV
sheet.SaveToFile("ExcelToCSV.csv", ",", Encoding.UTF8);
}
}
}
Imports Spire.Xls
Imports System.Text
Namespace ConvertAWorksheetToCsv
Class Program
Shared Sub Main(ByVal args() As String)
'创建 Workbook 类的实例
Dim workbook As Workbook = New Workbook()
'加载Excel文件
workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Sample.xlsx")
'获取第一张工作表
Dim sheet As Worksheet = workbook.Worksheets(0)
'将工作表保存为CSV
sheet.SaveToFile("ExcelToCSV.csv", ",", Encoding.UTF8)
End Sub
End Class
End Namespace
在 C# 和 VB.NET 中将 CSV 转换为 Excel
以下是将 CSV 转换为 Excel 的步骤:
- 创建 Workbook 类的实例。
- 使用 Workbook.LoadFromFile(string fileName, string separator, int startRow, int startColumn) 方法加载 CSV 文件。
- 使用 Workbook.Worksheets[index] 属性通过索引获取所需的工作表。
- 使用 Worksheet.AllocatedRange 属性访问工作表的使用范围。然后将 CellRange.IgnoreErrorOptions 属性设置为 IgnoreErrorType.NumberAsText 以忽略可能的错误,同时将范围内的数字保存为文本。
- 使用 CellRange.AutoFitColumns() 和 CellRange.AutoFitRows() 方法自动调整列和行。
- 使用 Workbook.SaveToFile(string fileName, ExcelVersion version) 方法将 CSV 保存到 Excel。
- C#
- VB.NET
using Spire.Xls;
namespace ConvertCsvToExcel
{
class Program
{
static void Main(string[] args)
{
//创建 Workbook 类的实例
Workbook workbook = new Workbook();
//加载CSV文件
workbook.LoadFromFile(@"C:\\Users\\Administrator\\Desktop\\ExcelToCSV.csv", ",", 1, 1);
//获取第一个工作表
Worksheet sheet = workbook.Worksheets[0];
//访问工作表中使用的范围
CellRange usedRange = sheet.AllocatedRange;
//将范围内的数字另存为文本时忽略错误
usedRange.IgnoreErrorOptions = IgnoreErrorType.NumberAsText;
//自动调整列和行
usedRange.AutoFitColumns();
usedRange.AutoFitRows();
//保存输出文档
workbook.SaveToFile("CSVToExcel.xlsx", ExcelVersion.Version2013);
}
}
}
Imports Spire.Xls
Namespace ConvertCsvToExcel
Class Program
Shared Sub Main(ByVal args() As String)
'创建 Workbook 类的实例
Dim workbook As Workbook = New Workbook()
'加载CSV文件
workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\ExcelToCSV.csv", ",", 1, 1)
'获取第一个工作表
Dim sheet As Worksheet = workbook.Worksheets(0)
'访问工作表中使用的范围
Dim usedRange As CellRange = sheet.AllocatedRange
'将范围内的数字另存为文本时忽略错误
usedRange.IgnoreErrorOptions = IgnoreErrorType.NumberAsText
'自动调整列和行
usedRange.AutoFitColumns()
usedRange.AutoFitRows()
'保存输出文档
workbook.SaveToFile("CSVToExcel.xlsx", ExcelVersion.Version2013)
End Sub
End Class
End Namespace
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请 该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。 获取有效期 30 天的临时许可证。