CSV 文件的列中需要 3 位数字
Posted
技术标签:
【中文标题】CSV 文件的列中需要 3 位数字【英文标题】:Need 3 digits in column in a CSV-file 【发布时间】:2019-05-28 09:01:02 【问题描述】:我有一个脚本,它从 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.
如何使用“Export-CSV”进行这种格式化?
请帮助我被困在这里..
【问题讨论】:
请始终添加您已有的代码来解决您的问题! Format variable as 4 digits with leading zeroes 的可能重复项 没有看到代码我猜你只是打电话给PadLeft 【参考方案1】:有几种方法可以将更改应用到 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
【讨论】:
【参考方案2】:对变量使用 -f ( format ) 运算符
即
[int] $int = 25;
"0:D3" -f $int
这里 3 是数字,输出将是:
025
【讨论】:
以上是关于CSV 文件的列中需要 3 位数字的主要内容,如果未能解决你的问题,请参考以下文章