我有一个脚本,可以从XML文件中提取数据,并将其放入具有2列的CSV文件中。 该文件如下所示:
Name, Count
1,34
3,55
15,66
103,99
etc.
到目前为止一切都很好...
我的问题是,读取CSV文件的程序在“名称”列中总是期望3位数字。
因此CSV文件需要如下所示:
Name, Count
001,34
003,55
015,66
103,99
etc.
如何使用“导出CSV”进行这种格式化?
请帮助我被困在这里。
答案 0 :(得分:0)
将-f(format)运算符与变量一起使用
即
[int] $int = 25;
"{0:D3}" -f $int
这里3是数字,输出将是:
025
答案 1 :(得分:0)
有几种方法可以将更改应用于csv文件。
读取/导入变量,更改名称,Export-Csv变量
$Csv = Import-Csv .\Sample.csv
$Csv | ForEach-Object{ $_.Name = $_.Name.PadLeft(3,'0') }
$Csv | Export-Csv .\NewSample.csv -NoTypeInformation
对计算出的属性使用相同的标头/属性名称进行即时 。
Import-Csv .\Sample.csv |
Select-Object @{n='Name';e={$_.Name.PadLeft(3,'0')}},Count|
Export-Csv .\NewSample2.csv -NoTypeInformation