C# 导入CSV在C中使用PowerShell添加列#
我有一个相当大的CSV文件(27MB),其中至少有400000行。我想在其中添加一列,就像在中一样,并将其导出,只是我必须用C#来完成。我添加了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()
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();
可能重复的