如何在C#中读取字符串格式的csv文件?

如何在C#中读取字符串格式的csv文件?,c#,.net,csv,ssis,C#,.net,Csv,Ssis,整个工作流程是,我需要读取路径上的csv文件,然后对数据进行一些修改,然后通过C#将数据加载到特定的表中。C代码正在MSBI SSIS包脚本中运行 我正在使用.NetStreamReader从文件路径读取数据 var reader = new StreamReader(File.OpenRead(@"filepath")); 这工作得很好,但在这之后,我无法将StreamReader输出转换为字符串格式,以便在字符串中进行一些复杂的数据修改 这里有我可以使用的直接类型铸造吗?也欢迎任何替代解决

整个工作流程是,我需要读取路径上的
csv
文件,然后对数据进行一些修改,然后通过C#将数据加载到特定的表中。C代码正在
MSBI SSIS
包脚本中运行

我正在使用.Net
StreamReader
从文件路径读取数据

var reader = new StreamReader(File.OpenRead(@"filepath"));
这工作得很好,但在这之后,我无法将
StreamReader
输出转换为字符串格式,以便在字符串中进行一些复杂的数据修改

这里有我可以使用的直接类型铸造吗?也欢迎任何替代解决方案。

我会使用

var reader = new StreamReader(File.OpenRead(@"filepath"));
while (!reader.EndOfStream)
{
    var line = reader.ReadLine();
    var values = line.Split(',');

    //Do processing here, modify values and add to tables etc
}
然后,values对象将是按csv顺序排列的值数组


然后,您可以使用值[0]、值[1]、值[n]等进行访问。对单个值进行处理,并逐个记录添加到表中。

System.IO.File.ReadAllText(“路径”);你的问题标题和正文不匹配!确切地说,您面临的问题是什么?@ArghyaC,StreamReader返回一个var值,而WebClient.DownloadString(URI)返回一个字符串。数据修改的代码是根据字符串完成的。我需要将StreamReader变量转换为字符串,以便我可以使用代码的其余部分。类型转换在这里不起作用。@MajkeloDev:可以。谢谢你的回答。我已经试过了,但这里的问题有两个:对于具有多行的csv,以及它们是否嵌入在引号中。(因为有一个地址字段,可能包含“,”)。另一个是值数组的类型为“var”。这将不允许我对数据进行修改。您可以先在“”上拆分,然后根据“,”拆分生成的数组值。要解决var的问题,只需转换为您需要的任何值。value.ToString()或int32.TryParse()将派上用场。您需要从数据中获得什么数据类型?我非常确定String.Split提供的是字符串数组,而不是var。