(c#)对16进制数的加减

操作16进制的数据,对它进行基础的加减操作,梳理了两个不同思路的方法,记录一下。

一、方法1如下:

// <summary>
// 对十六进制数做加法,方式一
// </summary>
// <param name="iNum">要加多少(十进制)</param>
public string AddHex(int iNum)
{
      for(int i = 0; i < iNum; i++)
      {
           string strHex = "00FF00FF0001";
           string strHexLower = strHex.ToLower();
           int  iLocation = 11;
           char[ ]  ch = strHexLower.toCharArray();
           char  cTemp = ++ch[iLocation];
           while(cTemp > 'f')
           {
                ch[iLocation] = '0';
                iLocation--;
                ch[iLocation]++;
                cTemp = ch[iLocation];
           }
           if(cTemp > '9' && cTemp < 'a' )
           {
                ch[iLocation] = 'a';
           }
           else
           {
                ch[iLocation] = cTemp;
           }
           strHexLower = String.Concat(ch);

           return  strHexLower.toUpper();
       }
}

二、方法2如下:

// <summary>
// 对十六进制数做加法,方式二:
// </summary>
// <param name="iNum">要加多少(十进制)</param>
public string AddHex(int iNum)
{
     //int32数据类型范围为2的31次方(10位数,2开头); long(64位)数据类型范围为2的63次方(19位,9开头)
     string strHex = "00FF00FF0001";

     //int64.parse()是将一个字符串转化为64位整数类型;
     //strHex是输入的字符串;
     //System.Globalization.NumberStyles.HexNumber表示strHex这个字符串是十六进制格式的字符串
     int64  iHex10 = int64.parse( strHex , System.Globalization.NumberStyles.HexNumber );

     iHex10 = iHex10 + iNum;

     //iHex10是要转换的整数
     //16表示转换为16进制
     //这行代码表示,将 iHex10转换为16进制表示
     return Convert.ToString( iHex10 , 16 );
}

  • 6
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值