C#读取csv文件中的值,并保存到定义的字典Dictionary中
时间: 2024-12-08 18:17:04 浏览: 116
在C#中,你可以使用`System.IO`和`System.Collections.Generic`命名空间下的类库来读取CSV文件并将内容存储到`Dictionary`中。这里是一个简单的步骤示例:
首先,你需要一个CSV解析库,如CsvHelper。如果你还没安装,可以使用NuGet包管理器安装它:
```powershell
Install-Package CsvHelper
```
然后,你可以创建一个方法来读取CSV文件并填充字典:
```csharp
using System;
using System.Collections.Generic;
using System.Globalization;
using System.IO;
using CsvHelper;
public class CSVReader
{
public static Dictionary<string, List<string>> ReadCsvToDictionary(string filePath)
{
using (var reader = new StreamReader(filePath))
using (var csv = new CsvReader(reader, CultureInfo.InvariantCulture))
{
var records = csv.GetRecords<dynamic>(); // 使用动态类型处理不确定的数据结构
Dictionary<string, List<string>> dict = new Dictionary<string, List<string>>();
foreach (var record in records)
{
if (!dict.ContainsKey(record.Field0)) // 假设第一列作为键,可根据实际CSV内容调整
{
dict[record.Field0] = new List<string>();
}
dict[record.Field0].Add(record.Field1); // 假设第二列作为值,同样需要调整
}
return dict;
}
}
}
```
在这个例子中,我们假设CSV文件的第一列作为键,第二列作为值。你需要根据实际CSV文件的列标题和内容调整`Field0`和`Field1`。
现在你可以像这样使用这个方法:
```csharp
string filePath = "path_to_your_csv_file.csv";
Dictionary<string, List<string>> dataFromCsv = CSVReader.ReadCsvToDictionary(filePath);
// 现在dataFromCsv包含CSV文件的内容
```
阅读全文
相关推荐


















