C#将int转换为little-endian十六进制字符串

本文关键字:little-endian 十六进制 字符串 转换 int | 更新日期: 2023-09-27 17:50:48

我想将int转换为little-endian十六进制字符串。然后去掉最后两个零。

这是我的观点:

int score = 2516000;

需要返回的结果:

20642600

子字符串之后的最后一个字符串

206426

做这件事最简单的方法是什么?

C#将int转换为little-endian十六进制字符串

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。

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以匹配用户请求的澄清。