C#中的CSV文件读取教程
使用各种 Excel 格式通常需要读取数据,然后以编程方式重新配置数据。 在本文中,我们将学习如何使用 IronXL(一款非常适合这项工作的工具)在 C# 中读取 CSV 文件并解析 Excel 电子表格中的数据。
什么是CSV?
CSV 是一种简单的数据格式,但可能存在很多差异; 在我们的 C# 项目中,以编程方式读取数据可能很困难,因为它使用多个分隔符来区分数据的行和列。 本文将向您展示如何使用IronXL 库读取 CSV 文件。
1. 如何在 C# 中读取 CSV 文件
在 MVC、ASP.NET 或 .NET Core 中使用 IronXL 读取 CSV 文件之前,您需要先安装它。 以下是简要介绍。
- 在 Visual Studio 中,选择"项目"菜单
- 管理 NuGet 程序包
- 搜索 IronXL.Excel
- 安装
C# 读取 CSV 文件教程,图 1:在 Visual Studio 的 NuGet 包管理器中搜索 IronXL 在 Visual Studio 的 NuGet 包管理器中搜索 IronXL
当您需要在 C# 中读取 CSV 文件时,IronXL 是完美的工具。 您可以读取以逗号或其他任何分隔符分隔的 CSV 文件,如下面的代码片段所示。
// Load a CSV file and interpret it as an Excel-like workbook
WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
// Access the default worksheet in the workbook
WorkSheet ws = workbook.DefaultWorkSheet;
// Save the workbook to a new Excel file
workbook.SaveAs("Csv_To_Excel.xlsx");// Load a CSV file and interpret it as an Excel-like workbook
WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
// Access the default worksheet in the workbook
WorkSheet ws = workbook.DefaultWorkSheet;
// Save the workbook to a new Excel file
workbook.SaveAs("Csv_To_Excel.xlsx");Output:
C# 中读取 CSV 文件:教程,图 2:以逗号分隔符输出 CSV 文件 输出以逗号分隔的 CSV 文件
代码解释:
创建了一个WorkBook对象。 然后使用 WorkBook 对象的LoadCSV方法来指定 CSV 的名称、格式以及要读取的 CSV 文件中使用的分隔符。 在这种情况下,逗号用作分隔符。
然后创建一个WorkSheet对象。 这里将放置 CSV 文件的内容。 文件将以新名称和新格式保存。
C# 读取 CSV 文件教程,图 3:数据在 Microsoft Excel 中显示 在 Microsoft Excel 中显示的数据
2. IronXL for Excel 文件
在您的项目中使用 IronXL,它是一种在 C# 中处理 Excel 文件格式的简化方法。 你可以通过直接下载的方式安装 IronXL 。 或者,您可以使用适用于 Visual Studio 的 NuGet Install 。 该软件可免费用于开发。
dotnet add package IronXL.Excel
3. 加载WorkBook并访问WorkSheet
WorkBook是 IronXL 的一个类,其对象提供对 Excel 文件及其所有功能的完全访问权限。 例如,如果我们想访问一个 Excel 文件,我们可以使用以下代码:
// Load the Excel file
WorkBook wb = WorkBook.Load("sample.xlsx"); // Excel file path// Load the Excel file
WorkBook wb = WorkBook.Load("sample.xlsx"); // Excel file path要访问 Excel 文件的特定工作表,IronXL 提供了WorkSheet类。
// Access a specific worksheet by name
WorkSheet ws = wb.GetWorkSheet("Sheet1"); // by sheet name// Access a specific worksheet by name
WorkSheet ws = wb.GetWorkSheet("Sheet1"); // by sheet name获取 Excel 工作表ws后,您可以从中提取任何类型的数据并对其执行所有 Excel 功能。 可以通过以下步骤从 Excel 工作表ws访问数据:
using IronXL;
class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Iterate through a range of cells and display their values
foreach (var cell in ws["A2:A10"])
{
Console.WriteLine("Value is: {0}", cell.Text);
}
Console.ReadKey();
}
}using IronXL;
class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Iterate through a range of cells and display their values
foreach (var cell in ws["A2:A10"])
{
Console.WriteLine("Value is: {0}", cell.Text);
}
Console.ReadKey();
}
}4. 将 Excel 工作表读取为数据表
使用 IronXL,将 Excel WorkSheet作为数据表进行操作非常容易。
DataTable dt = ws.ToDataTable(true); // Converts the worksheet to a DataTable, using the first row as column namesDataTable dt = ws.ToDataTable(true); // Converts the worksheet to a DataTable, using the first row as column names请使用以下命名空间:
using IronXL;
using System.Data;using IronXL;
using System.Data;写下以下代码:
class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("Weather.xlsx"); // Your Excel file Name
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Parse worksheet into datatable
DataTable dt = ws.ToDataTable(true); // Parse Sheet1 of sample.xlsx file into DataTable
// Iterate through rows and columns to display their values
foreach (DataRow row in dt.Rows) // Access rows
{
for (int i = 0; i < dt.Columns.Count; i++) // Access columns of corresponding row
{
Console.Write(row[i] + " ");
}
Console.WriteLine();
}
}
}class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("Weather.xlsx"); // Your Excel file Name
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Parse worksheet into datatable
DataTable dt = ws.ToDataTable(true); // Parse Sheet1 of sample.xlsx file into DataTable
// Iterate through rows and columns to display their values
foreach (DataRow row in dt.Rows) // Access rows
{
for (int i = 0; i < dt.Columns.Count; i++) // Access columns of corresponding row
{
Console.Write(row[i] + " ");
}
Console.WriteLine();
}
}
}C# 中读取 CSV 文件:教程,图 4:DataTable 对象的控制台输出 来自 DataTable 对象的控制台输出
在这个例子中,我们将了解如何使用 Excel 文件作为DataSet 。
class Program
{
static void Main(string[] args)
{
// Load the workbook and convert it to a DataSet
WorkBook wb = WorkBook.Load("sample.xlsx");
DataSet ds = wb.ToDataSet(); // Parse WorkBook wb into DataSet
// Iterate through tables to display their names
foreach (DataTable dt in ds.Tables)
{
Console.WriteLine(dt.TableName);
}
}
}class Program
{
static void Main(string[] args)
{
// Load the workbook and convert it to a DataSet
WorkBook wb = WorkBook.Load("sample.xlsx");
DataSet ds = wb.ToDataSet(); // Parse WorkBook wb into DataSet
// Iterate through tables to display their names
foreach (DataTable dt in ds.Tables)
{
Console.WriteLine(dt.TableName);
}
}
}C# 中读取 CSV 文件:教程,图 5:从 DataSet 对象访问工作表名称 从数据集对象中访问工作表名称
让我们来看另一个例子,了解如何访问所有 Excel 工作表中每个单元格的值。 在这里,我们可以访问 Excel 文件中每个工作表的每个单元格的值。
class Program
{
static void Main(string[] args)
{
// Load the workbook and convert it to a DataSet
WorkBook wb = WorkBook.Load("Weather.xlsx");
DataSet ds = wb.ToDataSet(); // Treat the complete Excel file as DataSet
// Iterate through each table and its rows and columns
foreach (DataTable dt in ds.Tables) // Treat Excel WorkSheet as DataTable
{
foreach (DataRow row in dt.Rows) // Corresponding Sheet's Rows
{
for (int i = 0; i < dt.Columns.Count; i++) // Sheet columns of corresponding row
{
Console.Write(row[i] + " ");
}
Console.WriteLine();
}
}
}
}class Program
{
static void Main(string[] args)
{
// Load the workbook and convert it to a DataSet
WorkBook wb = WorkBook.Load("Weather.xlsx");
DataSet ds = wb.ToDataSet(); // Treat the complete Excel file as DataSet
// Iterate through each table and its rows and columns
foreach (DataTable dt in ds.Tables) // Treat Excel WorkSheet as DataTable
{
foreach (DataRow row in dt.Rows) // Corresponding Sheet's Rows
{
for (int i = 0; i < dt.Columns.Count; i++) // Sheet columns of corresponding row
{
Console.Write(row[i] + " ");
}
Console.WriteLine();
}
}
}
}C# 中读取 CSV 文件:教程,图 6:数据集对象的控制台输出 数据集对象的控制台输出
5. C# .NET 中的 CSV 解析
CSV 文件在字段中处理换行符的方式上存在大量问题,或者字段可能包含在引号中,从而完全阻止简单的字符串拆分方法。 最近,我发现使用 C# .NET 转换 CSV 时,可以通过指定可自定义的分隔符而不是使用string.Split(',')以逗号分隔值,来实现以下选项。
6. 在 C# 记录中读取 CSV 数据
此过程会将读取器切换到下一个文件。我们在 TryGetField 中读取 CSV 字段文件。 我们使用读取函数读取 CSV 文件中的字段作为记录字段。
// Load a CSV file, specify the file format and delimiter
WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
// Access the default worksheet from the workbook
WorkSheet ws = workbook.DefaultWorkSheet;
// Convert worksheet to DataTable
DataTable dt = ws.ToDataTable(true); // Parse Sheet1 of sample.xlsx file into DataTable
// Iterate through rows and columns to display their values
foreach (DataRow row in dt.Rows) // Access rows
{
for (int i = 0; i < dt.Columns.Count; i++) // Access columns of corresponding row
{
Console.Write(row[i] + " ");
}
Console.WriteLine();
}// Load a CSV file, specify the file format and delimiter
WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
// Access the default worksheet from the workbook
WorkSheet ws = workbook.DefaultWorkSheet;
// Convert worksheet to DataTable
DataTable dt = ws.ToDataTable(true); // Parse Sheet1 of sample.xlsx file into DataTable
// Iterate through rows and columns to display their values
foreach (DataRow row in dt.Rows) // Access rows
{
for (int i = 0; i < dt.Columns.Count; i++) // Access columns of corresponding row
{
Console.Write(row[i] + " ");
}
Console.WriteLine();
}C# 读取 CSV 文件教程,图 7:DataTable 的控制台输出 数据表的控制台输出
7. 从 Excel 文件中获取数据
现在我们可以使用各种方法,轻松地从打开的 Excel WorkSheet中获取任何类型的数据。 在以下示例中,我们可以看到如何访问特定单元格的值并将其解析为string :
// Access the data by cell addressing
string val = ws["Cell Address"].ToString();// Access the data by cell addressing
string val = ws["Cell Address"].ToString();上面的代码中, ws是WorkSheet ,它是在步骤 2 中定义的。这是一种"简单"的方法,但您可以阅读更多内容并查看访问 Excel 文件数据的不同示例。
8. 如何在 C# 中解析 Excel 文件
在使用 Excel 电子表格进行应用程序构建时,我们经常需要根据数据分析结果,并且需要在 C# 中将 Excel 文件数据解析为所需的格式才能获得正确的结果。 在 C# 环境中,使用 IronXL 可以轻松地将数据解析成不同的格式; 请参阅以下步骤。
using IronXL;
class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Parse Excel cell value into string
string str_val = ws["B3"].Value.ToString();
// Parse Excel cell value into Int32
Int32 int32_val = ws["G3"].Int32Value;
// Parse Excel cell value into Decimal
decimal decimal_val = ws["E5"].DecimalValue;
// Output parsed values to the console
Console.WriteLine("Parse B3 Cell Value into String: {0}", str_val);
Console.WriteLine("Parse G3 Cell Value into Int32: {0}", int32_val);
Console.WriteLine("Parse E5 Cell Value into decimal: {0}", decimal_val);
Console.ReadKey();
}
}using IronXL;
class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Parse Excel cell value into string
string str_val = ws["B3"].Value.ToString();
// Parse Excel cell value into Int32
Int32 int32_val = ws["G3"].Int32Value;
// Parse Excel cell value into Decimal
decimal decimal_val = ws["E5"].DecimalValue;
// Output parsed values to the console
Console.WriteLine("Parse B3 Cell Value into String: {0}", str_val);
Console.WriteLine("Parse G3 Cell Value into Int32: {0}", int32_val);
Console.WriteLine("Parse E5 Cell Value into decimal: {0}", decimal_val);
Console.ReadKey();
}
}9. 如何将Excel数据解析为数值和布尔值
现在我们来学习如何解析Excel文件数据。 首先,我们来看看如何处理 Excel 中的数值数据,然后看看如何将其解析成我们所需的格式。
C# 中读取 CSV 文件:教程,图 8:每种数据类型的汇总表 每种数据类型的汇总表
class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Parse Excel cell value into string
string str_val = ws["B3"].Value.ToString();
// Parse Excel cell value into Int32
Int32 int32_val = ws["G3"].Int32Value;
// Parse Excel cell value into Decimal
decimal decimal_val = ws["E5"].DecimalValue;
// Output parsed values to the console
Console.WriteLine("Parse B3 Cell Value into String: {0}", str_val);
Console.WriteLine("Parse G3 Cell Value into Int32: {0}", int32_val);
Console.WriteLine("Parse E5 Cell Value into decimal: {0}", decimal_val);
Console.ReadKey();
}
}class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Parse Excel cell value into string
string str_val = ws["B3"].Value.ToString();
// Parse Excel cell value into Int32
Int32 int32_val = ws["G3"].Int32Value;
// Parse Excel cell value into Decimal
decimal decimal_val = ws["E5"].DecimalValue;
// Output parsed values to the console
Console.WriteLine("Parse B3 Cell Value into String: {0}", str_val);
Console.WriteLine("Parse G3 Cell Value into Int32: {0}", int32_val);
Console.WriteLine("Parse E5 Cell Value into decimal: {0}", decimal_val);
Console.ReadKey();
}
}这段代码将显示以下输出:
C# 中读取 CSV 文件:教程,图 9:带有正确数据类型的控制台输出 控制台输出包含正确的数据类型
我们可以在这里看到Excel文件sample.xlsx的值:
C# 读取 CSV 文件教程,图 10:在 Excel 中显示正确的数据类型 在 Excel 中显示正确的数据类型
IronXL 提供了BoolValue函数,用于将 Excel 文件数据解析为布尔数据类型。 它的用法如下:
// Access a cell value as a boolean
bool Val = ws["Cell Address"].BoolValue;// Access a cell value as a boolean
bool Val = ws["Cell Address"].BoolValue;10. 如何将 Excel 文件解析为 C# 集合
class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Convert a range into an array
var array = ws["B6:F6"].ToArray();
// Get the count of items in the array
int item = array.Count();
// Get the first item as a string
string total_items = array[0].Value.ToString();
// Output information about the array to the console
Console.WriteLine("First item in the array: {0}", item);
Console.WriteLine("Total items from B6 to F6: {0}", total_items);
Console.ReadKey();
}
}class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Convert a range into an array
var array = ws["B6:F6"].ToArray();
// Get the count of items in the array
int item = array.Count();
// Get the first item as a string
string total_items = array[0].Value.ToString();
// Output information about the array to the console
Console.WriteLine("First item in the array: {0}", item);
Console.WriteLine("Total items from B6 to F6: {0}", total_items);
Console.ReadKey();
}
}10.1 如何将 Excel WorkSheet解析为数据表
IronXL 的一个出色功能是我们可以轻松地将特定的 Excel WorkSheet转换为数据表。 为此,我们可以使用 IronXL 的.ToDataTable()函数,如下所示:
class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Parse Sheet1 of sample.xlsx file into DataTable
// Setting 'true' makes the first row in Excel as the column names in DataTable
DataTable dt = ws.ToDataTable(true);
}
}class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Parse Sheet1 of sample.xlsx file into DataTable
// Setting 'true' makes the first row in Excel as the column names in DataTable
DataTable dt = ws.ToDataTable(true);
}
}10.2 如何将 Excel 文件解析为数据集
如果我们想将完整的 Excel 文件解析为 DataSet,那么为此我们可以使用 IronXL 中的.ToDataSet()函数。
class Program
{
static void Main(string[] args)
{
// Load an entire workbook into a DataSet
WorkBook wb = WorkBook.Load("sample.xlsx");
// Convert workbook to DataSet
DataSet ds = wb.ToDataSet();
// We can also get a DataTable from the DataSet which corresponds to a WorkSheet
DataTable dt = ds.Tables[0];
}
}class Program
{
static void Main(string[] args)
{
// Load an entire workbook into a DataSet
WorkBook wb = WorkBook.Load("sample.xlsx");
// Convert workbook to DataSet
DataSet ds = wb.ToDataSet();
// We can also get a DataTable from the DataSet which corresponds to a WorkSheet
DataTable dt = ds.Tables[0];
}
}10.3 读取特定范围内的 Excel 数据
IronXL 提供了一种智能方法来读取特定范围内的 Excel 文件数据。 该范围可以应用于行和列。
class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Get specified range values by loop
foreach (var item in ws["B3:B8"])
{
Console.WriteLine("Value is: {0}", item);
}
Console.ReadKey();
}
}class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Get specified range values by loop
foreach (var item in ws["B3:B8"])
{
Console.WriteLine("Value is: {0}", item);
}
Console.ReadKey();
}
}上述代码显示以下输出:
C# 读取 CSV 文件教程,图 11:控制台输出,访问 B3:B8 范围内的所有值 控制台输出以访问 B3:B8 范围内的所有值
并生成 Excel 文件 sample.xlsx 中的值:
C# 读取 CSV 文件教程,图 12:示例文件 sample.xlsx 的数据展示 示例文件 sample.xlsx 的数据显示
此外,IronXL 还兼容许多 Excel 方法,可用于与单元格交互,包括样式和边框、数学函数、条件格式或根据可用数据创建图表。
11. 如何读取 Excel 文件中的布尔数据
在应用程序开发中,我们需要根据 Excel 文件中的布尔数据类型做出决策。
class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Traverse a range and output boolean values
foreach (var item in ws["G1:G10"])
{
Console.WriteLine("Condition is: {0}", item.BoolValue);
}
Console.ReadKey();
}
}class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Traverse a range and output boolean values
foreach (var item in ws["G1:G10"])
{
Console.WriteLine("Condition is: {0}", item.BoolValue);
}
Console.ReadKey();
}
}由此,我们得到以下输出:
C# 读取 CSV 文件教程,图 13:获取布尔数据的控制台输出 获取布尔数据时的控制台输出
Excel 文件 sample.xlsx,其中包含 C1 到 C10 的值:
C# 中读取 CSV 文件:教程,图 14:Excel 示例,可与控制台输出进行比较 用于与控制台输出进行比较的 Excel 示例
12. 如何阅读完整的Excel工作表
利用行和列索引可以轻松读取完整的 Excel 工作表。 为此,我们使用两个循环:一个用于遍历所有行,另一个用于遍历特定行的所有列。 这样我们就可以轻松获取整个 Excel 工作表中所有单元格的值。
class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("Weather.xlsx"); // Your Excel File Name
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Traverse all rows of Excel WorkSheet
for (int i = 0; i < ws.Rows.Count(); i++)
{
// Traverse all columns of specific Row
for (int j = 0; j < ws.Columns.Count(); j++)
{
// Get the values
string val = ws.Rows[i].Columns[j].Value.ToString();
Console.WriteLine("Value of Row {0} and Column {1} is: {2}", i, j, val);
}
}
Console.ReadKey();
}
}class Program
{
static void Main(string[] args)
{
// Load the workbook and access a specific worksheet
WorkBook wb = WorkBook.Load("Weather.xlsx"); // Your Excel File Name
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Traverse all rows of Excel WorkSheet
for (int i = 0; i < ws.Rows.Count(); i++)
{
// Traverse all columns of specific Row
for (int j = 0; j < ws.Columns.Count(); j++)
{
// Get the values
string val = ws.Rows[i].Columns[j].Value.ToString();
Console.WriteLine("Value of Row {0} and Column {1} is: {2}", i, j, val);
}
}
Console.ReadKey();
}
}C# 中读取 CSV 文件:教程,图 15:读取所有值后的控制台输出 读取所有值的控制台输出
13. 如何在不使用互操作的情况下读取 Excel 文件
IronXL 是一个适用于 C# 和 .NET 的 Excel 库,它允许开发人员无需使用 Microsoft.Office.Interop.Excel 即可从XLS 和 XLSX文档读取和编辑 Excel 数据。
该 API 使我们能够直观地创建、读取、操作、保存和导出 Excel 文件,用于:
添加以下命名空间:
using IronXL;
using System;
using System.Linq;using IronXL;
using System;
using System.Linq;现在在主函数中编写以下代码。
class Program
{
static void Main(string[] args)
{
// Load an Excel file and access the first worksheet
WorkBook workbook = WorkBook.Load("Weather.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();
// Select cells easily in Excel notation and return the calculated value
int cellValue = sheet["A2"].IntValue;
// Read from ranges of cells elegantly
foreach (var cell in sheet["A2:A10"])
{
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
}
}class Program
{
static void Main(string[] args)
{
// Load an Excel file and access the first worksheet
WorkBook workbook = WorkBook.Load("Weather.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();
// Select cells easily in Excel notation and return the calculated value
int cellValue = sheet["A2"].IntValue;
// Read from ranges of cells elegantly
foreach (var cell in sheet["A2:A10"])
{
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
}
}C# 读取 CSV 文件教程,图 16:每个单元格的控制台输出 每个单元格的控制台输出
IronXL 还完全支持 ASP.NET、MVC、Windows、macOS、Linux、iOS 和 Android 移动应用程序开发。
14. 结论和 Iron XL 特别优惠
除了在 C# 中解析 CSV 文件外,IronXL 只需两行代码即可将 CSV 文件转换为 Excel 文件!
使用 C# 或 VB.NET,无需互操作即可轻松使用 IronXL 的 Excel API。您可以读取、编辑和创建 Excel 电子表格,或处理其他 Excel 格式,例如XLS/XLSX/CSV/TSV 。 借助多种框架的支持,您可以花两件产品的价格购买五件产品。 点击我们的定价页面了解更多信息。
C# 中读取 CSV 文件:教程,图 17:Iron Suite 的 5 个产品 Iron Suite 的 5 款产品
常见问题解答
我如何在 C# 中读取 CSV 文件?
要在 C# 中读取 CSV 文件,您可以通过在 Visual Studio 中通过 NuGet 安装 IronXL 来使用该库。安装后,使用 WorkBook.LoadCSV 方法来加载和解释 CSV 文件。
什么是 CSV?为什么在 C# 中处理会变得复杂?
CSV 是一种简单的数据格式,但由于分隔符的变化,处理起来可能很复杂。IronXL 简化了 C# 项目中 CSV 文件的读取和解析。
我可以使用 C# 将 CSV 文件转换为 Excel 吗?
可以,IronXL 允许您通过加载 CSV 并使用 WorkBook.SaveAs 方法保存来将 CSV 文件转换为 XLS 或 XLSX 等 Excel 格式。
如何在 C# 项目中安装 IronXL?
您可以通过在 Visual Studio 中使用 NuGet 包管理器安装 IronXL。搜索 'IronXL.Excel' 并将其添加到您的项目中,以开始处理 Excel 文件。
是否可以在 C# 中将 Excel 单元格数据解析为特定数据类型?
可以,使用 IronXL,您可以使用 Int32Value 和 BoolValue 等方法将 Excel 单元格值解析为数值和布尔等特定数据类型。
如何在 C# 中读取 Excel 工作表中特定范围内的单元格数据?
使用 IronXL,您可以通过循环迭代范围并通过 IronXL 的索引功能访问单元格值来读取特定单元格的数据。
如何在 C# 中将 Excel 工作表转换为 DataTable?
您可以使用 IronXL 的 WorkSheet.ToDataTable 方法将 Excel 工作表转换为 DataTable,该方法可高效地将工作表解析为 DataTable 对象以供数据操作。
我需要 Microsoft Office Interop 来以编程方式读取 Excel 文件吗?
不,使用 IronXL,您无需 Microsoft Office Interop 即可读取和操作 Excel 文件,使其成为独立且高效的解决方案。
使用 IronXL 处理 Excel 和 CSV 文件的优势是什么?
IronXL 提供简单的安装,无需依赖 Interop,支持多种 Excel 格式,并且与各种 .NET 框架兼容,从而提高处理 CSV 和 Excel 文件的生产力。
如何在 C# 中读取完整的 Excel 工作表?
要使用 IronXL 读取完整的 Excel 工作表,您可以使用嵌套循环遍历所有行和列,并使用 IronXL 的方法提取单元格值。






