首页 > 解决方案 > 使用 Powershell 写出两个标题行而不删除现有数据

问题描述

我需要为现有的 csv 文件生成两个标题行,因为将上传 csv 的系统需要两个标题行。csv 文件将包含我想要保留的数据。

我一直在测试一个powershell脚本来做到这一点,我可以写一行标题,但我很难写两行。

下面是我目前正在尝试构建的 powershell 脚本。

$file = "C:\Users\_svcamerarcgis\Desktop\Test.csv"
$filedata = import-csv $file -Header WorkorderETL 'n ICFAORNonICFA, WONUmber, Origin
$filedata | export-csv $file -NoTypeInformation

我正在寻找的最终结果应该如下:

WorkorderETL
ICFAORNonICFA, WONUmber, Origin
xxx,yyy,zzz

标签: powershellcsvimport-csvexport-csv

解决方案


考虑到您只是想在 CSV 的顶部添加一行,您可能最好尝试将其作为文本文件处理:

$file = "C:\Users\User\OneDrive\Scripts\StackTesting\Test.csv"
$CSV = "c1r1, c2r1, c3r1 `nc1r2, c2r2, c3r2" 

$filedata = Get-Content $file 

$filedata = "WorkorderETL`n" + $CSV

$filedata | Out-File $file

这将导致 CSV 文件保存:

WorkorderETL
c1r1, c2r1, c3r1 
c1r2, c2r2, c3r2

这看起来是你想要的。


推荐阅读