Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 导入CSV在C中使用PowerShell添加列#_C#_.net_Csv_Powershell - Fatal编程技术网

C# 导入CSV在C中使用PowerShell添加列#

C# 导入CSV在C中使用PowerShell添加列#,c#,.net,csv,powershell,C#,.net,Csv,Powershell,我有一个相当大的CSV文件(27MB),其中至少有400000行。我想在其中添加一列,就像在中一样,并将其导出,只是我必须用C#来完成。我添加了System.Management.Automation和Microsoft.PowerShell名称空间。我还希望新列成为CSV中的第一列。我如何才能以最快的方式实现这一点 虽然使用的方法可以工作,但我特别不想使用windows未提供的任何自定义库 这是我尝试过的,但似乎不起作用: PowerShell ps = PowerShell.Create()

我有一个相当大的CSV文件(27MB),其中至少有400000行。我想在其中添加一列,就像在中一样,并将其导出,只是我必须用C#来完成。我添加了
System.Management.Automation
Microsoft.PowerShell
名称空间。我还希望新列成为CSV中的第一列。我如何才能以最快的方式实现这一点

虽然使用的方法可以工作,但我特别不想使用windows未提供的任何自定义库

这是我尝试过的,但似乎不起作用:

PowerShell ps = PowerShell.Create();
ps.AddCommand("Import-Csv " + csvFileName + " |Select-Object *,@{Name='Name' ;Expression = {'setvalue'}} | Export-Csv " + csvFileName + " -NoTypeInformation");
ps.Invoke();

我通过将
ps.AddCommand
更改为
ps.AddScript
并用单引号括住csvFileName解决了这个问题。修改后的代码如下

PowerShell ps = PowerShell.Create();
ps.AddScript("Import-Csv '" + csvFileName + "' |Select-Object *,@{Name='Name' ;Expression = {'setvalue'}} | Export-Csv '" + newCsvFileName + "' -NoTypeInformation");
ps.Invoke();
可能重复的