精华内容
下载资源
问答
  • labview字符串转16进制

    2019-01-16 16:50:18
    labview字符串转16进制转换,非常方便,直接调用即可。
  • 如下所示: def str_to_hex(s):  s = s.split(' ')  send_buf = b''  for i in range(len(s)):  send_buf += struct.pack('B',int(s[i],16)) ... 您可能感兴趣的文章:python3.4 将16进制转字符串的实例Pytho
  • VB字符串转16进制

    2017-07-12 20:59:37
    工具,函数
  • java 字符串转16进制Ascii

    热门讨论 2013-03-15 08:54:11
    java 字符串转16进制Ascii,非常好用,直接解压,复制代码就可以了。
  • 16进制转字符串

    2019-03-13 20:41:30
    16进制转字符串
  • 进制字符串转十六进制,用了c自带的标准库,
  • 字符串 16进制

    2012-08-28 16:42:41
    字符串 16进制, 扩展了atoi的功能
  • 字符16进制工具,可以把字符转换为16进制内码,也可以把16进制的内码转换为字符
  • 字符串转16进制

    千次阅读 2019-08-13 16:15:05
    问题描述:通过串口接收到一串字符串"cacabcbc",要求按照16进制输出时也是"cacabcbc"。 问题分析:这个问题乍一看,还不知道如何下手。其实很简单,就是对字符的ASCII码进行转换。 例如:仔细分析可以得到一个...

    问题描述:通过串口接收到一串字符串"cacabcbc",要求按照16进制输出时也是"cacabcbc"。

     

    问题分析:这个问题乍一看,还不知道如何下手。其实很简单,就是对字符的ASCII码进行转换。

    例如:仔细分析可以得到一个字符与它本身相同的16进制数相差87,再仔细点看,可以发现其实就是差了一个‘a’再加上10。

                                                          

     

    编程:字符转16进制

    针对多种情况做出相应的处理

     

    编程:16进制转字符

    也就是反过来算而已

    期间还需要做一个处理,一个字符在内存中占据8bit,一个16进制的数占据8bit。例如

    char buf[1] = 'a'; char buf[1] = 0xab;

     

    所以,光转换还是不够的,还需要合并,拆分操作。例如,两个字符16bit可以合并成一个8bit的16进制数。

     

    编程:字符合并16进制

    转换一个后需要左移四位

     

    转换一整串的字符串

     

    编程:16进制转字符串

    很简单,先将高位提取出来,转换后用8bit来存储。

     

    展开全文
  • 16进制转字符串&&字符串转16进制

    千次阅读 2020-05-07 15:56:17
    void HexToStr(char *pbDest, char *pbSrc, int nLen) { unsigned char ddl,ddh; int i; for (i=0; i<nLen; i++) { ddh = 48 + (unsigned char)pbSrc[i] / 16; ddl = 48 + (uns...

    //16进制转字符串

    void HexToStr(char *pbDest, char *pbSrc, int nLen)
    {
        unsigned char ddl,ddh;
        int i;

        for (i=0; i<nLen; i++)
        {
            ddh = 48 + (unsigned char)pbSrc[i] / 16;
            ddl = 48 + (unsigned char)pbSrc[i] % 16;
            if (ddh > 57) ddh = ddh + 7;
            if (ddl > 57) ddl = ddl + 7;
            pbDest[i*2] = ddh;
            pbDest[i*2+1] = ddl;
        }

        //pbDest[nLen*2] = '\0';
    }


    //字符串转16进制
    void StrToHex(char *pbDest, char *pbSrc, int nLen)
    {
        unsigned char h1,h2;
        unsigned char s1,s2;
        int i;

        for (i=0; i<nLen; i++)
        {
            h1 = pbSrc[2*i];
            h2 = pbSrc[2*i+1];

            s1 = toupper(h1) - 0x30;
            if (s1 > 9) 
                s1 -= 7;

            s2 = toupper(h2) - 0x30;
            if (s2 > 9) 
                s2 -= 7;

            pbDest[i] = s1*16 + s2;
        }
    }

     

    一、将数组转换为十六进制同值的字符串

       读取数组中的数字,打印成字符串的时候以2位大写的格式。

    int arrayToStr(unsigned char *buf, unsigned int buflen, char *out)
    {
        char strBuf[33] = {0};
        char pbuf[32];
        int i;
        for(i = 0; i < buflen; i++)
        {
            sprintf(pbuf, "%02X", buf[i]);
            strncat(strBuf, pbuf, 2);
        }
        strncpy(out, strBuf, buflen * 2);
        printf("out = %s\n", out);
        return buflen * 2;
    }
    二、将十六进制的字符串转换为十六进制数组

    下面定义的字符串中的字符只能是0-F的字符,但是不区分大小写的,前面是安装两位为一个数字进行转换,最后一个数字如果还是两位的则正常转换,如果只剩一位的话则在前面补零输出。

    int StringToHex(char *str, unsigned char *out, unsigned int *outlen)
    {
        char *p = str;
        char high = 0, low = 0;
        int tmplen = strlen(p), cnt = 0;
        tmplen = strlen(p);
        while(cnt < (tmplen / 2))
        {
            high = ((*p > '9') && ((*p <= 'F') || (*p <= 'f'))) ? *p - 48 - 7 : *p - 48;
            low = (*(++ p) > '9' && ((*p <= 'F') || (*p <= 'f'))) ? *(p) - 48 - 7 : *(p) - 48;
            out[cnt] = ((high & 0x0f) << 4 | (low & 0x0f));
            p ++;
            cnt ++;
        }
        if(tmplen % 2 != 0) out[cnt] = ((*p > '9') && ((*p <= 'F') || (*p <= 'f'))) ? *p - 48 - 7 : *p - 48;
        
        if(outlen != NULL) *outlen = tmplen / 2 + tmplen % 2;
        return tmplen / 2 + tmplen % 2;
    }
    三、将十进制字符串转化为十进制数组

    int StringToCom(char *str, unsigned char *out, int *outlen)
    {
        char *p = str;
        char high = 0, low = 0;
        int tmplen = strlen(p), cnt = 0;
        tmplen = strlen(p);
        if(tmplen % 2 != 0) return -1;
        while(cnt < tmplen / 2) //1213141516171819
        {
            out[cnt] = (*p - 0x30) * 10 + (*(++p) - 0x30);
            p++;
            cnt ++;
        }
        *outlen = tmplen / 2;
        return tmplen / 2;
    }
    四、简单的使用方法

    定义的参数有些为unsigned char,是因为在定义为char的时候,转换为十六进制之后,负数在表示的时候,难看!

    #include "stdio.h"
    #include "stdlib.h"
    #include "string.h"
     
    unsigned char ArrayCom[16] = {
        11, 12, 13, 14, 15, 16, 17, 18,
        19, 20, 21, 22, 23, 24, 25, 26};
    unsigned char ArrayHex[16] = {
        0x2c, 0x57, 0x8f, 0x79, 0x27, 0xa9, 0x49, 0xd3,
        0xb5, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
     
    char *strHex = "01aa0304050607083f0add0c0d0e0f00";
    char *strCom = "1D1213AB6FC1718B19202122232425A6";
     
    int main(int argc, const char *argv)
    {
        int cnt;
        char str[33] = {0};
        unsigned char out[33];
        arrayToStr(ArrayCom, 16, str);
        
        int outlen = 0;
        StringToHex(strCom, out, &outlen);
        for(cnt = 0; cnt < outlen; cnt ++)
        {
            printf("%02X ", out[cnt]);
        } 
        putchar(10);
     
        return 0;
    }
     

    原文链接:https://blog.csdn.net/zhemingbuhao/article/details/83111564

    展开全文
  • 满足混合字符串(汉字和数字等字符)批量(非一个字符一个字符),转换为16进制;同样支持16进制转换为字符串,C++代码; 在VS2010上编码测试可运行。可用于串口通信数据编码。
  • lua 字符串转16进制

    千次阅读 2020-09-22 17:52:53
    lua字符串16进制
    function StringToHex(str)
        Strlen = string.len(str)
        Hex = 0x0
        for i = 1, Strlen do
            temp = string.byte(str,i)
            if ((temp >= 48) and (temp <= 57)) then
                temp = temp - 48
            elseif ((temp >= 97) and (temp <= 102)) then
                temp = temp - 87
            elseif ((temp >= 65) and (temp <= 70)) then
                temp = temp - 55
            end
            Hex =  Hex + temp*(16^(Strlen-i))
        end
        return (Hex)
    end
    

    转载请注明出处
    https://blog.csdn.net/sinat_37090629/article/details/108737548

    展开全文
  • labview 将字符串控件的数据转换成十六进制字符串,可用于Hex显示 使用Labview2015版本写的
  • 软件介绍: 字符串转换器可以进行10进制转2进制转换,10进制转8进制/16进制...16进制转2进制或8进制10进制;字符串转10进制16进制,字符串转Unicode或Delphi DFM字符串。转换前选择一下要使用的转换模式转换即可。
  • 将输入的字符串解析为16进制输出
  • 所以,在转换的时候往往费力费时,近日做项目正好用到和java程序通讯,java发送过来的数据是十六进制数字组成的字符串,解析的时候颇费心思才算完成,所以,权在此做一笔记,方便以后查看,以及需要帮助的童鞋,当然...

    C语言的字符串操作并不像java,Csharp那样提供直接的方法,简单粗暴。所以,在转换的时候往往费力费时,近日做项目正好用到和java程序通讯,java发送过来的数据是十六进制数字组成的字符串,解析的时候颇费心思才算完成,所以,权在此做一笔记,方便以后查看,以及需要帮助的童鞋,当然,有问题欢迎随时交流,一同进步,欧耶!~

    一、将数组转换为十六进制同值的字符串

       读取数组中的数字,打印成字符串的时候以2位大写的格式。

    int arrayToStr(unsigned char *buf, unsigned int buflen, char *out)
    {
        char strBuf[33] = {0};
        char pbuf[32];
        int i;
        for(i = 0; i < buflen; i++)
        {
            sprintf(pbuf, "%02X", buf[i]);
            strncat(strBuf, pbuf, 2);
        }
        strncpy(out, strBuf, buflen * 2);
        printf("out = %s\n", out);
        return buflen * 2;
    }
    二、将十六进制的字符串转换为十六进制数组

    下面定义的字符串中的字符只能是0-F的字符,但是不区分大小写的,前面是安装两位为一个数字进行转换,最后一个数字如果还是两位的则正常转换,如果只剩一位的话则在前面补零输出。

    int StringToHex(char *str, unsigned char *out, unsigned int *outlen)
    {
        char *p = str;
        char high = 0, low = 0;
        int tmplen = strlen(p), cnt = 0;
        tmplen = strlen(p);
        while(cnt < (tmplen / 2))
        {
            high = ((*p > '9') && ((*p <= 'F') || (*p <= 'f'))) ? *p - 48 - 7 : *p - 48;
            low = (*(++ p) > '9' && ((*p <= 'F') || (*p <= 'f'))) ? *(p) - 48 - 7 : *(p) - 48;
            out[cnt] = ((high & 0x0f) << 4 | (low & 0x0f));
            p ++;
            cnt ++;
        }
        if(tmplen % 2 != 0) out[cnt] = ((*p > '9') && ((*p <= 'F') || (*p <= 'f'))) ? *p - 48 - 7 : *p - 48;
        
        if(outlen != NULL) *outlen = tmplen / 2 + tmplen % 2;
        return tmplen / 2 + tmplen % 2;
    }
    三、将十进制字符串转化为十进制数组

    int StringToCom(char *str, unsigned char *out, int *outlen)
    {
        char *p = str;
        char high = 0, low = 0;
        int tmplen = strlen(p), cnt = 0;
        tmplen = strlen(p);
        if(tmplen % 2 != 0) return -1;
        while(cnt < tmplen / 2) //1213141516171819
        {
            out[cnt] = (*p - 0x30) * 10 + (*(++p) - 0x30);
            p++;
            cnt ++;
        }
        *outlen = tmplen / 2;
        return tmplen / 2;
    }
    四、简单的使用方法

    定义的参数有些为unsigned char,是因为在定义为char的时候,转换为十六进制之后,负数在表示的时候,难看!

    #include "stdio.h"
    #include "stdlib.h"
    #include "string.h"
     
    unsigned char ArrayCom[16] = {
        11, 12, 13, 14, 15, 16, 17, 18,
        19, 20, 21, 22, 23, 24, 25, 26};
    unsigned char ArrayHex[16] = {
        0x2c, 0x57, 0x8f, 0x79, 0x27, 0xa9, 0x49, 0xd3,
        0xb5, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
     
    char *strHex = "01aa0304050607083f0add0c0d0e0f00";
    char *strCom = "1D1213AB6FC1718B19202122232425A6";
     
    int main(int argc, const char *argv)
    {
        int cnt;
        char str[33] = {0};
        unsigned char out[33];
        arrayToStr(ArrayCom, 16, str);
        
        int outlen = 0;
        StringToHex(strCom, out, &outlen);
        for(cnt = 0; cnt < outlen; cnt ++)
        {
            printf("%02X ", out[cnt]);
        } 
        putchar(10);
     
        return 0;
    }
     
    ————————————————
    版权声明:本文为CSDN博主「青椒*^_^*凤爪爪」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/zhemingbuhao/article/details/83111564

    展开全文
  • CVI串口字符串16进制转换
  • VC++字符串转16进制字符串(附源码)

    千次阅读 多人点赞 2021-02-20 17:13:55
    给定一个字符串,有时我们需要把它16进制字符串进行操作 比如: wifi的profile 中的SSID ,在操作时需要16进制 如下面: strssid.TrimLeft(); strssid.TrimRight(); CString tempstr = ...
  • android 的字符串 ascII码 16进制的相互转换
  • Dll 文件里面实现了字符串转为十六进制的数,请调用头文件,根据自己的需要使用
  • python 字符串转16进制

    万次阅读 2019-06-20 15:14:22
    先把字符串转成字节,再从字节16进制 data="assgdfnjhgjgj" print(data.encode().hex()) 输出:6173736764666e6a68676a676a 16进制字符字符串 datahex='6173736764666e6a68676a676a' print(binascii.a2b_hex...
  • Qt5——字符串转16进制

    千次阅读 2020-01-02 17:00:54
    在Qt5中,TextEdit和LineEdit得到的数据都是字符串类型。例如QString strdata=ui->DateEdit->text();’ 如果我们需要将其转化为16进制或是10进制。只需要加上toInt。 用于发送: QString strdata=ui->...
  • Labview字符串转16进制

    2021-05-22 13:12:11
    在数据通信的时候经常会用到16进制来相互传输数据,下面是我在学习用Labview编写串口助手的时候,因为要用到16进制发送,探索到的用Labview实现字符串...字符串转16进制子程序如下: 字符串转16进制子程序 ...
  • 十六进制转字符串工具
  • 本文实例讲述了php将字符串转换成16进制的方法。分享给大家供大家参考。具体分析如下: php中可以通过bin2hex函数将字符串转换成16进制的形式输出,bin2hex()函数返回结果为ascii码 <?php $string = "Hello\...
  • QT 收到下位机16进制数转换字符串显示,绝对可靠 简单易懂。
  • 主要介绍了C#十六进制字符串转进制int的方法,涉及C#操作数制转换的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
  • 字符串转十六进制 python2 hex = "hello".encode('hex') print hex python3 在python3中,hex编...十六进制转字符串 python2 hex = "68656c6c6f" print hex.decode('hex') python3 方法一 import binas
  • 主要介绍了Python 字节流,字符串,十六进制相互转换实例(binascii,bytes),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 关于字符串与十六进制码之间的转化,网上到是有不少理论方法,但是可用的没多少,专门写一个demo的更是没有。所以我自己写了一个实例(PS:用VC++6.0写的)上传,以便于遇到这个问题的人能更快的解决这个问题。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 482,595
精华内容 193,038
关键字:

字符串转16进制