-5

以下のような16進数のファイルがあります

9C CB CB 8D 13 75 D2 11 91 58 00 C0 4F 79 56 A4 60 00 00 00 92 02 00 00 40 1F 00 00 80 14 00 00 A4 08 00 00 90 02 00 000 A0 09 7 01 E 00 4 00 00 90 02 00 00 A0 09 01 00 FC 7A 00 00 84 31 01 00 CF 01 00 00 A0 09 01 00 14 A7 00 00 24 3B 02 00 75 02 00 00 A0 09 01 00 50 04 0 C3 0 4 14 02 00 00 A0 09 01 00 20 35 00 00 64 4E 04 00 C8 00 00 00 90 02 00 00 E8 03 00 00 00 00 00 00 00 08 00 00 CA 01 00 00 A4 00 00 00

最初の 16 バイト (9C CB CB 8D 13 75 D2 11 91 58 00 C0 4F 79 56 A4) は、ファイルのヘッダーを示しています。

4

1 に答える 1

1

これにより、16 進数の入力が文字に変換され、出力されます (ただし、80 以上の数値は、ASCII で定義された範囲外であるため、実際には ASCII ではありません)。

#include <algorithm>
#include <iostream>
#include <iterator>
#include <string>

int main() { 
     std::transform(std::istream_iterator<std::string>(std::cin), 
                    std::istream_iterator<std::string>(),
                    std::ostream_iterator<char>(std::cout),
                    [](std::string const &in) {
                        return (char) strtol(in.c_str(), NULL, 16); 
                    });
}

それがあなたにとってどれだけ役立つかはわかりませんが、それはあなたが求めていることのようであり、あなたが本当に欲しいものについての詳細情報がなければ、おそらく誰でもできると思います.

于 2013-10-15T08:54:16.267 に答える