PowerShell で CSV の列数が定義と合っているか確認したメモ
Contents
サンプル CSV データの仕様
- CSV の列定義は「名前,生年月日,血液型,ニックネーム」とする
- 1 行目は列数が定義通り、2 行目は列数が定義より少ない、3 行目は列数が定義より多い
Aさん,1974/01/07,A,Aちゃん
Bさん,1984/10/13,B
Cさん,1985/05/05,A,Cちゃん,コスプレ
コードと説明
$csv = @"
Aさん,1974/01/07,A,Aちゃん
Bさん,1984/10/13,B
Cさん,1985/05/05,A,Cちゃん,コスプレ
"@
$csv | ConvertFrom-Csv -Header "Name","Birthday","BloodType","NickName","Dummy" | %{
if ($_.NickName -eq $null) {
Write-Host ("{0} は列数が少ない" -f $_.Name)
} elseif ($_.Dummy -ne $null) {
Write-Host ("{0} は列数が多い" -f $_.Name)
} else {
Write-Host ("{0} の列数はちょうどいい感じ" -f $_.Name)
}
}
実行結果
Aさん の列数はちょうどいい感じ
Bさん は列数が少ない
Cさん は列数が多い
規定の列のあとに Dummy
という列を追加して、次のように判定している
Dummy
が$null
ではない時、定義より列数が多いNickName
が$null
の時、定義より列数が少ない
ディスカッション
コメント一覧
まだ、コメントがありません