如何将一串string类型的16进制字符串转成byte[]数组?

问题描述

比如如下一串字符串080003005844967d要转成byte[]b={0x08,0x00,0x03,0x00.......0x7d}

解决方案

解决方案二:
strings="080003005844967d";byte[]b=newbyte[s.Length/2]for(inti=0;i<s.Length;i+=2)b[i/2]=Convert.ToByte("0x"+s.SubString(i,2));
解决方案三:
用这个Convert.ToBytestaticvoidMain(string[]args){stringstr=@"080003005844967d";List<byte>bytes=newList<byte>();for(inti=0;i<str.Length;i+=2){stringstrTemp=str.Substring(i,2);byteb=Convert.ToByte(strTemp,16);bytes.Add(b);}byte[]result=bytes.ToArray();foreach(bytebinresult){Console.WriteLine("0x"+string.Format("{0:X}",b).PadLeft(2,'0'));}}

解决方案四:
stringa="fdsfgfsdfsdfsd442342";char[]b=convert.tochararray(a);byte[]c=Encoding.Default.GetBytes(b);

时间: 2024-09-26 11:22:30

如何将一串string类型的16进制字符串转成byte[]数组?的相关文章

ios-IOS 如何把16进制字符串转换成byte 求各位大神 最好能有代码

问题描述 IOS 如何把16进制字符串转换成byte 求各位大神 最好能有代码 IOS 如何把16进制字符串转换成byte?求各位大神 最好能有代码 解决方案 字符串由字符组成,每个字符都占用一定的字节,我记得是4还是多少,这是c语言底层的算法,应该还有其他算法

将16进制字符串转换成16进制数据

var tb1 = Tb1.Text; if (string.IsNullOrEmpty(tb1)) { tb1 = "0000"; } var s1 = tb1.Substring(0, 2); var int_1 = Convert.ToInt32(s1, 16); var s2 = tb1.Substring(2, 2); var int_2 = Convert.ToInt32(s2, 16); var bt1 = Convert.ToByte(int_1); var bt2 =

关于byte 进制 float String 编码 16进制字符串转16进制byte的问题

首先 只有String才与编码有关: byte与其他类型转换时,要注意大端点还是小端点, 编码: Ascii Unicode gbk utf-8等等  byte 占 8位 可由两个16进制数(0xff)组成,一个16进制占4位,也可由8位二进制数组成等等,与编码没关系,但可用2进制表示,也可由其他进制表示. "0xff"这样的16进制字符串转换成16进制byte String[] s="0X0C 0X03 0X00 0X04 0X00 0X02 0X84 0XD7"

进制转换-java怎么把一个数组里面的16进制值转换成8进制,我想先把16进制转成2进制再转8进制

问题描述 java怎么把一个数组里面的16进制值转换成8进制,我想先把16进制转成2进制再转8进制 java怎么把一个数组里面的16进制值转换成8进制,我想先把16进制转成2进制再转8进制,但是老是运行出错.大神们能不能给个小例子解释一下,谢谢 解决方案 http://blog.csdn.net/vanezuo/article/details/6556768 解决方案二: 使用函数啊,你找一下,Java有相应的函数能做到 解决方案三: 如果你的程序出错,你贴出你的程序才知道. 也可以参考我给你的

vb 串口发送16进制-Vb将文本框里输入的十进制数据按chr(13)分割,然后转换成&amp;amp;amp;h+16进制字符串形式

问题描述 Vb将文本框里输入的十进制数据按chr(13)分割,然后转换成&h+16进制字符串形式 例如文本框里输入253chr(13)255chr(13),要求输出结果书"&HFD" "&HFF",看了好多算法,但是还是没有研究出来. 我自己做的结果如下 Private Sub Text2_KeyPress(KeyAscii As Integer) Dim tmp() As String Dim aa As String * 1 Dim rd

给串口发送16进制字符串命令和包括16进制命令转换为字节数组

using System;using System.Collections.Generic;using System.Text;using System.IO.Ports;namespace SerialPortControl{    public class PortControl    {         /// <summary>        /// 向端口中发送命令.        /// </summary>        /// <param name=&quo

C语言:将16进制字符串转化为int类型值

将16进制字符串值转换为 int 整型值   此例中用 "1de" 作为测试字符串,实现代码如下:   [cpp] view plaincopy   #include <stdio.h>   #include <stdlib.h>   #include <string.h>   #include <ctype.h>      /*   * 将字符转换为数值   * */   int c2i(char ch)   {           /

php中将图片gif,jpg或mysql longblob或blob字段值转换成16进制字符串_php技巧

数据库脚本: -- -------------------------------------------------------- -- -- 表的结构 `highot_attachment` -- 复制代码 代码如下: CREATE TABLE IF NOT EXISTS `highot_attachment` ( `id` int(11) NOT NULL auto_increment, `phone_number_id` int(11) NOT NULL COMMENT 'phone_n

java-两个很长的16进制字符串怎么进行异或运算?

问题描述 两个很长的16进制字符串怎么进行异或运算? str1=""0d1fe39e573488cf"" str2=""0d1fe39e573488ee595acd5c6d4ce0f445476794"" 怎不进行异或运算? 由于太长不能转化成long 解决方案 每2个一组,存入数组,然后循环异或. 解决方案二: byte[] array1 = str1.getBte();byte[] array2 = str2.getByt