我有一个包含十六进制数字的字符串,我想递增该十六进制数字,直到达到我的最大数字 (FFF)。我如何遍历才能获得起始十六进制和 FFF 之间的每个数字?
我尝试将字符串转换为字节数组,但之后卡住了。
string stringHex = "7A";
string binaryval = "";
binaryval = Convert.ToString(Convert.ToInt32(stringHex, 16), 2);
int numOfBytes = binaryval.Length / 8;
byte[] bytes = new byte[numOfBytes];
for (int i = 0; i < numOfBytes; ++i)
{
bytes[i] = Convert.ToByte(binaryval.Substring(8 * i, 8), 2);
}
我需要它来创建一个显示所有这些数字的表格。
解决方法:
string sHex = Convert.ToString(sIPv4.Split(':')[2]);
for( int intFromHex = int.Parse(sHex, System.Globalization.NumberStyles.HexNumber);intFromHex <= 4095; intFromHex++)//4095 - FFF
{
string hexValue = intFromHex.ToString("X");
//SQL INSERT
}
最佳答案
您可以将 String
转换为 Int
递增 Int
,然后将其转换回 String
(十六进制)
string stringHex = "7A";
int intFromHex = int.Parse(stringHex , System.Globalization.NumberStyles.HexNumber) + 1;
string hexValue = intFromHex.ToString("X");
关于c# - 十六进制增量/循环直到 FFF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33940269/