ホームページ > バックエンド開発 > C++ > C# で大量の文字列形式の整数を 16 進数に変換する方法

C# で大量の文字列形式の整数を 16 進数に変換する方法

Barbara Streisand
リリース: 2025-01-11 11:31:46
オリジナル
194 人が閲覧しました

How to Convert Massive String-Formatted Integers to Hexadecimal in C#?

C# で大規模な文字列形式の整数を 16 進数に変換します

文字列として表される大きな整数を 16 進形式に変換することは、特に整数が一般的な変換方法の制限を超える場合、困難な作業になる可能性があります。

この問題を解決するには、次の点を考慮してください:

<code class="language-csharp">var s = "843370923007003347112437570992242323";
var result = new List<byte>();
result.Add(0);
foreach (char c in s)
{
    int val = (int)(c - '0');
    for (int i = 0; i < result.Count; i++)
    {
        result[i] = (byte)((result[i] * 10 + val) % 256);
        val = (result[i] * 10 + val) / 256;
    }
    if (val != 0)
        result.Add((byte)val);
}

string hex = "";
foreach (byte b in result)
    hex = "0123456789ABCDEF"[b] + hex;</code>
ログイン後にコピー

コードの説明:

  1. 入力文字列 s を初期化します。
  2. 中間計算結果を保存する空のリスト result を作成します。
  3. 文字列 s 内の各文字を反復処理し、それを整数値に変換します。
  4. 各文字の整数値の場合:
    • それに 10 を掛けて、result の現在の値に加算します。
    • 結果の合計を 1 桁に分割し、最下位桁を result に格納します。
    • さらなる処理のために残りの数値を右にシフトします。
  5. ループ後に数字が残っている場合は、それを result に追加します。
  6. result を反復処理し、各バイトを対応する 16 進数に変換することにより、16 進数の文字列 hex を構築します。

このアプローチを使用すると、非常に大きな文字列形式の整数であっても、C# で 16 進数形式に効率的に変換できます。

以上がC# で大量の文字列形式の整数を 16 進数に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート