4

intをリトルエンディアンの16進文字列に変換したいと思います。次に、最後の2つのゼロを取り除きます。

これが私のintです:

int score = 2516000;

結果を返したい:

20642600

サブストリングの後の最後のストリング

206426

これを行うための最も簡単な方法は何でしょうか?

4

2 に答える 2

3
var reversedBytes = System.Net.IPAddress.NetworkToHostOrder(2516000); // 543434240
var hex = reversedBytes.ToString("x");                                // 20642600
var trimmed = hex.Substring(0, hex.Length - 2);

他のソリューションのhex.TrimEnd('0')方法では、最後の2つだけでなく、すべての後続ゼロが削除されます。

于 2013-01-07T06:37:26.460 に答える
1
var reversedBytes = System.Net.IPAddress.NetworkToHostOrder(2516000); // 543434240
var hex = reversedBytes.ToString("x");                                // 20642600
var trimmed = hex.Substring(hex.Length >= 2 
                                ? hex.Length - 2 
                                : hex.Length);                        // 206426

trimmed編集済み:ユーザーリクエストの説明と一致するように修正されました。

于 2013-01-07T06:21:36.767 に答える