2017年11月25日

【PowerShell】ファイルを読み込み16進数でバイナリ表示する


ファイルを読み込みこんで、16進数でバイナリ表示するスクリプトを作ってみました。




ためしに、今回このようなテキストファイルを変換してみます。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$file = "C:\work\test.txt"
 
[Byte[]]$data = Get-Content $file -Encoding Byte
 
$buf = ''
$cnt = 0
 
Write-Host
 
foreach($a in $data)
{
    $buf = $buf + ' ' + $a.ToString("X2")    
    $cnt += 1
    if ($cnt -eq 16)
    {
        Write-Host $buf
        $buf = ''
        $cnt = 0
    }
}
 
Write-Host $buf
まず、Get-Contentを使ってファイルをバイト配列に格納します。そして、あとは順番に読み込み16進数表記で出力しています。また、プロンプトへの表示はバイナリエディタぽく16バイトずつ表示するようにしました。


実行結果








スポンサーリンク



Follow Me on Pinterest
Clip to Evernote