PowerShell/テキストファイルを1行ずつ読み込むサンプルコード
の編集
Top
/
PowerShell
/
テキストファイルを1行ずつ読み込むサンプルコード
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
(no template pages)
#navi(../) * PowerShellでテキストファイルを1行ずつ読み込むサンプルコード [#r9fc66ae] PowerShellでテキストファイルを1行ずつ読み込むサンプルコードを2つ紹介します。 #contents #htmlinsertpcsp(win-top.html,win-sp.html) * 関連記事 [#ue0e6c4a] -[[ファイル・フォルダの存在チェック・Test-Pathコマンドレット>PowerShell/ファイル・フォルダの存在チェック・Test-Path]] -[[PowerShellでテキストファイルの指定した範囲を抽出する・Get-Content>PowerShell/テキストファイルの指定した範囲を抽出する・Get-Content]] -[[PowerShellでテキストファイルの行数を取得する方法・Get-Content>PowerShell/テキストファイルの行数を取得する方法・Get-Content]] -[[PowerShellでファイルサイズがゼロのファイルを作成する・New-Item>PowerShell/ファイルサイズがゼロのファイルを作成する・New-Item]] -[[テキストファイルを1行ずつ読み込むサンプルコード>PowerShell/テキストファイルを1行ずつ読み込むサンプルコード]] * 使用したテキストファイル [#l8774e1b] #ref(in.txt) sakura tsubaki suzuran ajisai kosumosu bara * ファイルを1行ずつ読み込むサンプルコード [#icd4bf3f] Get-ContentコマンドレットとSystem.IO.StreamReaderを利用した2つのサンプルコードを以下に紹介します。 ** Get-Contentを利用したサンプルコード(その1) [#l0c1f324] 以下のサンプルコードは1行毎にstring[]に格納されます。 #ref(read1.ps1) $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) [#obb78724] #ref(read3.ps1) $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を利用したサンプルコード [#pdc8d2a0] 以下のサンプルコードは文字コードにシフトJISを指定しSystem.IO.StreamReaderオブジェクトを作成しています。~ あとは、System.IO.StreamReaderオブジェクトを操作し指定したテキストファイルを操作しています。 #ref(read2.ps1) $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行ずつ読み込むサンプルコードでした。 #htmlinsertpcsp(win-btm.html,win-sp.html)
タイムスタンプを変更しない
#navi(../) * PowerShellでテキストファイルを1行ずつ読み込むサンプルコード [#r9fc66ae] PowerShellでテキストファイルを1行ずつ読み込むサンプルコードを2つ紹介します。 #contents #htmlinsertpcsp(win-top.html,win-sp.html) * 関連記事 [#ue0e6c4a] -[[ファイル・フォルダの存在チェック・Test-Pathコマンドレット>PowerShell/ファイル・フォルダの存在チェック・Test-Path]] -[[PowerShellでテキストファイルの指定した範囲を抽出する・Get-Content>PowerShell/テキストファイルの指定した範囲を抽出する・Get-Content]] -[[PowerShellでテキストファイルの行数を取得する方法・Get-Content>PowerShell/テキストファイルの行数を取得する方法・Get-Content]] -[[PowerShellでファイルサイズがゼロのファイルを作成する・New-Item>PowerShell/ファイルサイズがゼロのファイルを作成する・New-Item]] -[[テキストファイルを1行ずつ読み込むサンプルコード>PowerShell/テキストファイルを1行ずつ読み込むサンプルコード]] * 使用したテキストファイル [#l8774e1b] #ref(in.txt) sakura tsubaki suzuran ajisai kosumosu bara * ファイルを1行ずつ読み込むサンプルコード [#icd4bf3f] Get-ContentコマンドレットとSystem.IO.StreamReaderを利用した2つのサンプルコードを以下に紹介します。 ** Get-Contentを利用したサンプルコード(その1) [#l0c1f324] 以下のサンプルコードは1行毎にstring[]に格納されます。 #ref(read1.ps1) $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) [#obb78724] #ref(read3.ps1) $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を利用したサンプルコード [#pdc8d2a0] 以下のサンプルコードは文字コードにシフトJISを指定しSystem.IO.StreamReaderオブジェクトを作成しています。~ あとは、System.IO.StreamReaderオブジェクトを操作し指定したテキストファイルを操作しています。 #ref(read2.ps1) $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行ずつ読み込むサンプルコードでした。 #htmlinsertpcsp(win-btm.html,win-sp.html)
テキスト整形のルールを表示する
添付ファイル:
read1.ps1
2505件
[
詳細
]
read2.ps1
2045件
[
詳細
]
read3.ps1
2678件
[
詳細
]
in.txt
3174件
[
詳細
]