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