Smalltalk/X にはfromHexBytes:
、ByteArray クラスが理解する " " というメソッドがあります。確かではありませんが、他の ST 方言にも似たようなものがあると思います。
存在する場合は、次の方法でこれを解決できます。
(ByteArray fromHexString:'68656C6C6F31323334') asString
逆は次のようになります。
'hello1234' asByteArray hexPrintString
もう 1 つの解決策として、文字列を 16 進数として読み取り、digitBytes (バイト配列を取得する必要があります) を取得してから、それを文字列に変換する方法があります。いえ
(Integer readFrom:'68656C6C6F31323334' radix:16)
digitBytes asString
これに関する 1 つの問題は、どのバイト順で digitBytes (LSB または MSB) を取得するのか、また、それがアーキテクチャ間で同じになるように定義されているか、画像の読み込み時に変換されてネイティブの順序を使用するかどうかがわからないことです。そのため、最後に文字列を逆にする必要がある場合があります (システムのエンディアンによっては、移植可能にするために、条件付きで文字列を逆にする必要がある場合もあります。
これを VisualWorks でテストすることはできませんが、そこでも問題なく動作するはずです。