gpt4 book ai didi

c# - 将 Int 类型转换为 Byte 类型

转载 作者:行者123 更新时间:2023-12-02 08:37:50 31 4
gpt4 key购买 nike

我有一小组代码尝试将一个字节中的 1 位从 0 索引位移到 7 索引。每次移位后,我想获取 int 值并将其转换为字节:

for(int t=0; t<8; t++)
{
int ShiftBit = 0x80 >> t;
byte ShiftBitByte = Convert.ToByte(ShiftBit.ToString(),8);
}

我希望输出是:

  • 0x80
  • 0x40
  • 0x20
  • 0x10
  • 0x08
  • 0x04
  • 0x02
  • 0x01

当我运行代码时,遇到异常“其他不可解析的字符位于字符串末尾。”有没有更好的方法来捕获这些字节?

谢谢

最佳答案

你为什么不这样做呢?

for ( int i = 0 ; i < 8 ; ++i )
{
int s = 0x80 >> i ;
byte b = (byte) s ;
)

或者(更清洁):

for ( int i = 0x00000080 ; i != 0 ; i >>1 )
{
byte b = (byte) i ;
}

字节转换为十六进制字符串,例如

byte b = ...
string s = string.Format("0x{0:X2}",b) ;

应该做你的。但是字节是一个数字,它没有格式(表示),直到您将其转换为字符串并给它一个格式。

关于c# - 将 Int 类型转换为 Byte 类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21418329/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com