例如,以下csv文件。如何用「;」全局替換「,」在CSV文件?
123,"a,b,c",456
將成爲
123,"a;b;c",456
下面的代碼生成一個空文件(test.txt的)和它的速度慢。
Import-Csv file.csv | % {
$r = @{}
foreach($v in $_.PSObject.Properties) {
if ($v.Value -like "*,*") {
$r | Add-Member -MemberType NoteProperty -Name $v.Name -Value ($v.Value -replace ",",";")
}
else {
$r | Add-Member -MemberType NoteProperty -Name $v.Name -Value ($v.Value)
}
}
} | Export-Csv test.txt
處理3MB文件需要23分鐘。 – ca9163d9
@ dc7a9163d9在我的測試虛擬機上使用一個(不可否認的是簡單的)4 MB樣本文件進行測試運行需要1秒多一點時間。 –
我在共享驅動器上測試過。共享驅動器的慢度導致性能問題。 – ca9163d9