Muni Bus

パソコンの操作方法や設定方法を忘れないようにメモしています。ブログを一回引っ越ししているので、所々表示がかなり乱れています・・・

【PowerShell】TSVファイルの読み込み

Import-Csvコマンドレットを-Delimiterオプションに"`t"を指定して実行する。最初に文字列型変数の配列を作成してTSVファイルに書き込む。

PS > $lns = @()
PS > $lns += "8`tウオッカ`t大橋彩香"
PS > $lns += "30`tライスシャワー`t石見舞菜香"
PS > $lns += "45`tスーパークリーク`t優木かな"
PS > $lns += "58`tメイショウドトウ`t和多田美咲"
PS > $lns | Out-File .\temp.tsv
PS > Get-Content .\temp.tsv
8       ウオッカ        大橋彩香
30      ライスシャワー  石見舞菜香
45      スーパークリーク        優木かな
58      メイショウドトウ        和多田美咲

作成したTSVファイルを読み込む。

PS > $tsv = Import-Csv .\temp.tsv -Delimiter "`t"
PS > Write-Output $tsv
8  ウオッカ         大橋彩香
-  --------         --------
30 ライスシャワー   石見舞菜香
45 スーパークリーク 優木かな
58 メイショウドトウ 和多田美咲
PS > $header = "no", "name", "seiyu"
PS > $tsv = Import-Csv .\temp.tsv -Delimiter "`t" -Header $header
PS > Write-Output $tsv
no name             seiyu
-- ----             -----
8  ウオッカ         大橋彩香
30 ライスシャワー   石見舞菜香
45 スーパークリーク 優木かな
58 メイショウドトウ 和多田美咲
PS > $tsv.Length
4
PS > $tsv[1]
no name           seiyu
-- ----           -----
30 ライスシャワー 石見舞菜香
PS > $tsv.seiyu
大橋彩香
石見舞菜香
優木かな
和多田美咲
PS > $tsv[1].seiyu
石見舞菜香

Import-Csvコマンドレットで読み込んだオブジェクトの型は以下のとおり。

PS > $tsv.GetType()
IsPublic IsSerial Name                                     BaseType
-------- -------- ----                                     --------
True     True     Object[]                                 System.Array
PS > $tsv[0].GetType()
IsPublic IsSerial Name                                     BaseType
-------- -------- ----                                     --------
True     False    PSCustomObject                           System.Object
PS > $tsv.name.GetType()
IsPublic IsSerial Name                                     BaseType
-------- -------- ----                                     --------
True     True     Object[]                                 System.Array