美文网首页
将字符串转换为二进制data类型

将字符串转换为二进制data类型

作者: coderJerry01 | 来源:发表于2016-12-21 08:40 被阅读7次

    //将字符串转换成data

    • (NSData)dataForHexString:(NSString)hexString{
      if (hexString == nil) {
      return nil;
      }
      const char* ch = [[hexString lowercaseString] cStringUsingEncoding:NSUTF8StringEncoding];
      NSMutableData* data = [NSMutableData data];

      while (ch) {
      if (
      ch == ' ') {
      continue;
      }
      char byte = 0;

        if ('0' <= *ch && *ch <= '9') {
            byte = *ch - '0';
        }
        else if ('a' <= *ch && *ch <= 'f') {
            
            byte = *ch - 'a' + 10;
        }
        else if ('A' <= *ch && *ch <= 'F') {
            
            byte = *ch - 'A' + 10;
        }
        ch++;
        byte = byte << 4;
        
        if (*ch) {
            
            if ('0' <= *ch && *ch <= '9') {
                
                byte += *ch - '0';
                
            } else if ('a' <= *ch && *ch <= 'f') {
                
                byte += *ch - 'a' + 10;
            }
            else if('A' <= *ch && *ch <= 'F')
            {
                byte += *ch - 'A' + 10;
            }
            ch++;
        }
        [data appendBytes:&byte length:1];
      

      }
      return data;

    }

    相关文章

      网友评论

          本文标题:将字符串转换为二进制data类型

          本文链接:https://www.haomeiwen.com/subject/chtqvttx.html