- 追加された行はこの色です。
- 削除された行はこの色です。
#author("2018-06-26T20:10:02+09:00","","")
#navi(../)
* PowerShellでCSVファイルのインポート [#def0a2ca]
PowerShellのImport-Csvコマンドレットを使用してCSVファイルから読み込むサンプルコードを以下に紹介します。
#contents
#htmlinsertpcsp(win-top.html,win-sp.html)
* 関連記事 [#a22ebd6d]
-[[ハッシュ(連想配列)の要素をforeachで表示するサンプルコード>PowerShell/ハッシュ(連想配列)の要素をforeachで表示するサンプルコード]]
-[[PowerShellでハッシュ(連想配列)に要素を追加する>PowerShell/ハッシュ(連想配列)に要素を追加する]]
-[[PowerShellでCSVファイルのインポート>PowerShell/CSVファイルのインポート・Import-Csv]]
-[[配列やハッシュの各値を要素としたループのサンプル>PowerShell/配列やハッシュの各値を要素としたループのサンプル]]
-[[PowerShellで配列内の文字列を連結し1つの変数に格納したい>PowerShell/配列内の文字列を連結し1つの変数に格納したい]]
-[[ハッシュの配列を表形式(Format-Table)で表示する方法>PowerShell/ハッシュの配列を表形式(Format-Table)で表示する方法]]
* CSVファイルを読み込む・Import-Csv [#g77e60ee]
使用したcsvファイルは以下の通りです。
#ref(in.csv)
sakura,suzuran
tsubaki,ajisai
csvファイルを読み込むPowerShellのサンプルコードは以下の通りです。
#ref(import-csv.ps1)
# ヘッダ未指定(1行目がヘッダとして指定されてしまう)
$c1 = Import-Csv in.csv
# CSVファイルの読込(ヘッダー指定)
$c2 = Import-Csv in.csv -Header "name1", "name2"
# カラムを指定して表示する
$c3 = Import-Csv in.csv -Header "name1", "name2" | Select-Object "name1"
Write-Host $c1
Write-Host $c2
Write-Host $c3
上記のサンプルスクリプトを実際に実行した時の出力です。
PS C:\work> .\import-csv.ps1
@{sakura=tsubaki; suzuran=ajisai}
@{name1=sakura; name2=suzuran} @{name1=tsubaki; name2=ajisai}
@{name1=sakura} @{name1=tsubaki}
コンソールで上記の$c1, $c2, $c3を確認してみます。~
以下に各要素を実際にアクセスする表記を記します。
** $c1を操作 [#zb55b2a4]
PS C:\work> $c1
sakura suzuran
------ -------
tsubaki ajisai
PS C:\work> $c1.sakura
tsubaki
PS C:\work> $c1.suzuran
ajisai
** $c2を操作 [#ib797e78]
PS C:\work> $c2
name1 name2
----- -----
sakura suzuran
tsubaki ajisai
PS C:\work> $c2[0].name1
sakura
PS C:\work> $c2[0].name2
suzuran
PS C:\work> $c2[1].name1
tsubaki
PS C:\work> $c2[1].name2
ajisai
** $c3を操作 [#dfc96710]
PS C:\work> $c3
name1
-----
sakura
tsubaki
PS C:\work> $c3[0].name1
sakura
PS C:\work> $c3[1].name1
tsubaki
以上、PowerShellでCSVファイルを読み込むサンプルスクリプトでした。
#htmlinsertpcsp(win-btm.html,win-sp.html)