從 CSV 匯入並將屬性轉換為正確的型別
預設情況下,Import-CSV
將所有值作為字串匯入,因此要獲取 DateTime 和 integer 物件,我們需要轉換或解析它們。
使用 Foreach-Object
:
> $listOfRows = Import-Csv .\example.csv
> $listOfRows | ForEach-Object {
#Cast properties
$_.DateTime = [datetime]$_.DateTime
$_.Integer = [int]$_.Integer
#Output object
$_
}
使用計算屬性:
> $listOfRows = Import-Csv .\example.csv
> $listOfRows | Select-Object String,
@{name="DateTime";expression={ [datetime]$_.DateTime }},
@{name="Integer";expression={ [int]$_.Integer }}
輸出:
String DateTime Integer
------ -------- -------
First 01.12.2016 12:00:00 30
Second 03.11.2015 13:00:00 20
Third 05.12.2015 14:00:00 20