【Powershell】パーセントエンコーディングされた文字列をデコードしてみた

Powershell Powershell

Powershellを利用してパーセントエンコーディングされた文字列をデコードしてみました。

広告

パーセントエンコーディングされた文字列をデコードする

以下のpowershellコマンドでデコード可能です。

Add-type -AssemblyName System.Web
$encode_str = "<パーセントエンコードされた文字列を記載>"
[System.Web.HttpUtility]::UrlDecode($encode_str)

●記載例

「あいうえお」をデコードします。

Add-type -AssemblyName System.Web
$encode_str = "%E3%81%82%E3%81%84%E3%81%86%E3%81%88%E3%81%8A"
[System.Web.HttpUtility]::UrlDecode($encode_str)

コマンドの説明

Add-type -AssemblyName System.Web

[GeneratePassword] メソッドを利用するためにアセンブリをロードします。

アセンブリとはコンパイル済みのコード群のことで、今起動しているpowershellセッションで [Add-type -AssemblyName] で指定したアセンブリを利用することができます。

[System.Web.HttpUtility]::UrlDecode($encode_str)

[HttpUtility] クラスから [UrlDecode] メソッドを利用することでデコードします。

実行結果

以下のようにデコードできます。

PS C:\> Add-type -AssemblyName System.Web
PS C:\> $encode_str = "%E3%81%82%E3%81%84%E3%81%86%E3%81%88%E3%81%8A"
PS C:\> [System.Web.HttpUtility]::UrlDecode($encode_str)
あいうえお
タイトルとURLをコピーしました