* hex への変換方法 [#c319e9ea]

WEPのASCIIをhexに表記した際、どのように記述すればよいか。&br;これらの用途にも利用可能である為、メモを残すとする。

** C を使った場合 [#q9f942ca]

 #include<stdio.h>
 #include<string.h>
 
 int main(int argc, char *argv[]) {
   char *key = argv[1];
   while(*key != '\0')
   printf("%X", *(key++));
   printf("\n");
   return 0;
 }

 ./a.out AregeNoGeGeGe
 41726567654E6F476547654765

** od/hexdumpを使った場合 [#pc17b78d]

 $ echo -n 'AregeNoGeGeGe'| od -t x1z
 0000000 41 72 65 67 65 4e 6f 47 65 47 65 47 65           >AregeNoGeGeGe<
 0000015

 $ echo -n 'AregeNoGeGeGe'| hexdump -C
 00000000  41 72 65 67 65 4e 6f 47  65 47 65 47 65           |AregeNoGeGeGe|
 0000000d



** perl/ruby を使った場合 [#v5e74a3f]

 $ echo 'AregeNoGeGeGe' | perl -lne 'print unpack("H*", $_)'
 41726567654e6f476547654765

 $ ruby -le 'print "AregeNoGeGeGe".unpack("H*")'
 41726567654e6f476547654765

ついでに逆も

 echo '41726567654e6f476547654765' | perl -lne 'print pack("H*", $_)'
 AregeNoGeGeGe


#comment
TOPページへ戻る   新しいページの作成新しい下位ページの作成そのページを引用して新規作成ページ名の変更ページへのリンク元を表示   サイトのページ一覧サイト内単語検索編集したページの履歴削除したページの履歴   別ウィンドウでマニュアルページへ