PowerShell/テキストファイルを1行ずつ読み込むサンプルコード


PowerShellでテキストファイルを1行ずつ読み込むサンプルコード 

PowerShellでテキストファイルを1行ずつ読み込むサンプルコードを2つ紹介します。


スポンサーリンク

関連記事 

使用したテキストファイル 

sakura tsubaki
suzuran ajisai
kosumosu bara

ファイルを1行ずつ読み込むサンプルコード 

Get-ContentコマンドレットとSystem.IO.StreamReaderを利用した2つのサンプルコードを以下に紹介します。

Get-Contentを利用したサンプルコード(その1) 

以下のサンプルコードは1行毎にstring[]に格納されます。

$f = (Get-Content in.txt) -as [string[]]
$i=1
foreach ($l in $f) {
    Write-Host $i : $l
    $i++
}

上記のサンプルコードを実行した時の出力です。

PS C:\work> C:\work\read1.ps1
1 : sakura tsubaki
2 : suzuran ajisai
3 : kosumosu bara

Get-Contentを利用したサンプルコード(その2) 

$i=1
foreach ($l in Get-Content in.txt) {
    Write-Host $i : $l
    $i++
}

上記のサンプルコードを実行した時の出力です。

PS C:\work> C:\work\read3.ps1
1 : sakura tsubaki
2 : suzuran ajisai
3 : kosumosu bara

System.IO.StreamReaderを利用したサンプルコード 

以下のサンプルコードは文字コードにシフトJISを指定しSystem.IO.StreamReaderオブジェクトを作成しています。
あとは、System.IO.StreamReaderオブジェクトを操作し指定したテキストファイルを操作しています。

$i=1
$txt = "c:\work\in.txt"
$enc = [Text.Encoding]::GetEncoding("Shift_JIS")
$fh = New-Object System.IO.StreamReader($txt, $enc)
while (($l = $fh.ReadLine()) -ne $null) {
    Write-Host $i : $l
    $i++
}

上記のサンプルコードを実行した時の出力です。

PS C:\work> C:\work\read2.ps1
1 : sakura tsubaki
2 : suzuran ajisai
3 : kosumosu bara

以上、PowerShellでテキストファイルを1行ずつ読み込むサンプルコードでした。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值