求16进制(超长)转2进制的算法?

cleverzhangxu 2010-05-22 06:36:14
在发这个帖子之前,我上网找了好久。

我这个16进制数比较长,不能用先转成10进制,再转到2进制的方法。
我先转成long的类型都超出范围了。

谁那有手工的算法,或者还有什么别的算法,把整个算法发下好吗?

跪求!
...全文
156 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
skep99 2010-05-22
  • 打赏
  • 举报
回复
[Quote=引用楼主 cleverzhangxu 的回复:]
在发这个帖子之前,我上网找了好久。

我这个16进制数比较长,不能用先转成10进制,再转到2进制的方法。
我先转成long的类型都超出范围了。

谁那有手工的算法,或者还有什么别的算法,把整个算法发下好吗?

跪求!
[/Quote]
早问早解决了,
1位16位数=2的4次方=16,所以1位16位的宽度是2进制的4倍
sxldfang 2010-05-22
  • 打赏
  • 举报
回复
楼主的“这个16进制数比较长”,比如:
s="12A4B5DCFF...",是这样的字符串吗?想要的转换结果是下面的这个样子吗?
result="1001010100100101101011101110011111111..."
sxiaohui8709253 2010-05-22
  • 打赏
  • 举报
回复
int.TryParse(charHex,NumberStyles,null,out byteHex);
NumberStyles.Hex 这里好像
sxiaohui8709253 2010-05-22
  • 打赏
  • 举报
回复
Public void HexCharToBytes(out byte[] bytesCharArray,strng strHexString)
{
int temp=0;
foreach(char charHex in strHexString.ToCharArray())
{
byte byteHex=0;
int.TryParse(charHex,NumberStyles,null,out byteHex);
bytesCharArray[temp]=byteHex;
temp++;
}
}


主要是int.TryParse那个方法 我手写的 可能编译有点问题 你自己去改改
lzsh0622 2010-05-22
  • 打赏
  • 举报
回复
主要方法:
int.Parse()
Convert.ToString(int,2)
lzsh0622 2010-05-22
  • 打赏
  • 举报
回复
private void button1_Click(object sender, EventArgs e)
{
string d16="A12164353734573457347D432253254235DA";
string d2="";
foreach ( char d in d16)
{
d2 += Convert.ToString(int.Parse(d.ToString(),System.Globalization.NumberStyles.AllowHexSpecifier),2).PadLeft(4,'0');
}
MessageBox.Show(d2);
}
wuyq11 2010-05-22
  • 打赏
  • 举报
回复
分割16进制数据
BitConverter.ToString
特别 2010-05-22
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wuyi8808 的回复:]

按下表转换,一位十六进制转换为四位二进制:
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001
A 1010
B 1011
C 1100
D 1101
E 1110
F 1111
[/Quote]

对头,16和2之间最容易互转了
wuyi8808 2010-05-22
  • 打赏
  • 举报
回复
按下表转换,一位十六进制转换为四位二进制:
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001
A 1010
B 1011
C 1100
D 1101
E 1110
F 1111
波导终结者 2010-05-22
  • 打赏
  • 举报
回复
一位一位转,1位16进制转8位2进制

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧