PowerShell: 「10進数」⇔「16進数」相互変換する
数値の基数変換は、さまざまなシステムやアプリケーションでのデータ処理において 重要な役割を果たします。 この記事では、 PowerShellで「10進数」と「16進数」の相互変換方法について説明します。
「10進数」を「16進数」へ変換
PowerShellで10進数を16進数に変換するには、.NET FrameworkのConvertクラスのToStringメソッドを使用します。以下は、具体的な方法と例です。
# 10進数を16進数に変換 [convert]::ToString(15, 16) # f [convert]::ToString(16, 16) # 10 [convert]::ToString(255, 16) # ff [convert]::ToString(256, 16) # 100
このメソッドでは、第1引数に10進数の数値を指定し、第2引数に基数(この場合、16)を指定します。こうすることで、10進数の数値を16進数に簡単に変換できます。
「16進数」を「10進数」へ変換
PowerShellで16進数を10進数に変換するには、.NET FrameworkのConvertクラスのToInt32メソッドを使用します。以下は、具体的な方法と例です。
# 16進数を10進数に変換
[convert]::ToInt32("F", 16) # 15
[convert]::ToInt32("10", 16) # 16
[convert]::ToInt32("FF", 16) # 255
[convert]::ToInt32("100", 16) # 256
このメソッドでは、第1引数に16進数の文字列(例: "F", "10", "FF"など)を指定し、第2引数に基数(この場合、16)を指定します。16進数の文字列の先頭に0xが付いている場合でも、問題なく変換できます。
16進数のプレフィックス
PowerShellでは、16進数を直接入力する際に0xプレフィックスを使用することもできます。このプレフィックスを使用すると、数値が16進数として解釈されます。
# 16進数のプレフィックスを使用した例 0x1f # 31 0x10 # 16 0xFF # 255 0x100 # 256
この方法を使用すると、16進数を直接扱うことができ、ToInt32メソッドを使用して10進数に変換することも簡単です。
まとめ
PowerShellでの10進数と16進数の相互変換は、Convertクラスのメソッドを使用することで簡単に実行できます。ToStringメソッドとToInt32メソッドを活用することで、データの基数変換を効率的に行うことができます。上記の例を参考にして、PowerShellでの基数変換をマスターしましょう。
参考サイト
Convert クラス (System) | Microsoft Docs