PowerShell: 「10進数」⇔「16進数」相互変換する

数値の基数変換は、さまざまなシステムやアプリケーションでのデータ処理において 重要な役割を果たします。 この記事では、 PowerShellで「10進数」と「16進数」の相互変換方法について説明します。

「10進数」を「16進数」へ変換

PowerShellで10進数を16進数に変換するには、.NET FrameworkConvertクラスの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 FrameworkConvertクラスの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

PowerShell