如何将字节串转换为十六进制字符串

作者&投稿:兀有会 (若有异议请与网页底部的电邮联系)
如何将字节数组转换为十六进制字符串再转为十进制整数~

byte数组转换成16进制字符串String:
public class CommonUtil {
/**
* byte数组转换成16进制字符串
* @param src
* @return
*/
public static String bytesToHexString(byte[] src){
StringBuilder stringBuilder = new StringBuilder();
if (src == null || src.length <= 0) {
return null;
}
for (int i = 0; i < src.length; i++) {
int v = src[i] & 0xFF;
String hv = Integer.toHexString(v);
if (hv.length() < 2) {
stringBuilder.append(0);
}
stringBuilder.append(hv);
}
return stringBuilder.toString();
}
}

byte数组转换成16进制字符数组String[]:
public class CommonUtil {
/**
* byte数组转换成16进制字符数组
* @param src
* @return
*/
public static String[] bytesToHexStrings(byte[] src){
if (src == null || src.length <= 0) {
return null;
}
String[] str = new String[src.length];

for (int i = 0; i < src.length; i++) {
int v = src[i] & 0xFF;
String hv = Integer.toHexString(v);
if (hv.length() < 2) {
str[i] = "0";
}
str[i] = hv;
}
return str;
}
}

字符串先转换二进制的在在转换16进制Byte
如下用C#实现的方法
字符转换到二进制方法
private static byte[] strToToHexByte(string hexString)
{
hexString = hexString.Replace(" ", "");
if ((hexString.Length % 2) != 0)
hexString += " ";
byte[] returnBytes = new byte[hexString.Length / 2];
for (int i = 0; i < returnBytes.Length; i++)
returnBytes[i] = Convert.ToByte(hexString.Substring(i * 2, 2), 16);
return returnBytes;
}

二进制方法转换到16进制Byte
public static string byteToHexStr(byte[] bytes)
{
string returnStr = "";
if (bytes != null)
{
for (int i = 0; i < bytes.Length; i++)
{
returnStr += bytes[i].ToString("X2");
}
}
return returnStr;
}

16进制与字符串、字节数组之间的转换
在串口通讯过程中,经常要用到 16进制与字符串、字节数组之间的转换
/// <summary>
/// 字符串转16进制字节数组
/// </summary>
/// <param name="hexString"></param>
/// <returns></returns>
private static byte[] strToToHexByte(string hexString)
{
hexString = hexString.Replace(" ", "");
if ((hexString.Length % 2) != 0)
hexString += " ";
byte[] returnBytes = new byte[hexString.Length / 2];
for (int i = 0; i < returnBytes.Length; i++)
returnBytes[i] = Convert.ToByte(hexString.Substring(i * 2, 2), 16);
return returnBytes;
}
字节数组转16进制字符串
/// <summary>
/// 字节数组转16进制字符串
/// </summary>
/// <param name="bytes"></param>
/// <returns></returns>
public static string byteToHexStr(byte[] bytes)
{
string returnStr = "";
if (bytes != null)
{
for (int i = 0; i < bytes.Length; i++)
{
returnStr += bytes[i].ToString("X2");
}
}
return returnStr;
}
从汉字转换到16进制
/// <summary>
/// 从汉字转换到16进制
/// </summary>
/// <param name="s"></param>
/// <param name="charset">编码,如"utf-8","gb2312"</param>
/// <param name="fenge">是否每字符用逗号分隔</param>
/// <returns></returns>
public static string ToHex(string s, string charset, bool fenge)
{
if ((s.Length % 2) != 0)
{
s += " ";//空格
//throw new ArgumentException("s is not valid chinese string!");
}
System.Text.Encoding chs = System.Text.Encoding.GetEncoding(charset);
byte[] bytes = chs.GetBytes(s);
string str = "";
for (int i = 0; i < bytes.Length; i++)
{
str += string.Format("{0:X}", bytes[i]);
if (fenge && (i != bytes.Length - 1))
{
str += string.


...一个二进制字节的“数组”比如(11010011)转化为十进制数,应该怎么转 ...
1)首先将上述的二进制数组(11010011)通过for循环,判断每个元素是否等于1,如果等于,输出布尔值T,否则输出布尔值F,这样得到一个 布尔数组;2)使用“布尔数组至数值转换”将刚才得到的布尔数组转换成数值就可以了。“布尔数组至数值转换”具体位置: 编程——布尔——布尔数组至数值转换。

C中,如何将一个字节的值转换成10进制的整数
不需要转换,当作十进制数进行其他操作就可以.计算机内部所有数据最后都是以二进制数形式存放的,执行int i=0xAC与执行int i=172效果是一样的,在计算机看来他们是同一个东西.

将一个字节存放的二进制补码10111100转换成十进制数?
二进制数10111100等于十进制数的128+32+16+8+4=188

如何将串口读取的十六进制字符串转换成十进制数值
byte ->int 直接转换 ~~~如果是多字节,就需要逐个byte 乘0xff---不同位,乘的次数不同,像int是32位,即有4个byte。那最高位需要乘3次0xff、次高位乘2次0xff、第3位需要乘0xff,第4位直接加起来 ~~~

C++怎样将内存中8字节16进制数转为一个十进制数?8字节存储ID号,要用...
8字节是__int64。如果是小端格式的话 char *memAddr = ...;__int64 value = *(__int64*)memAddr;\/\/直接按照64位整数读取 printf("%lld",value);\/\/输出到字符串可以用sprintf 如果是大端格式(字节顺序是反的,比较高的位在前面,比较低的位在后面),可以先翻转一下。

怎样把3个BYTE类型的16进制合并再转换为十进制
常用字节为二进制的数,设数字为xyz,方法是x×10的二次方+y×10的一次方+z×10的零次方的出来的数就是是十进制的!

设计一个程序将一字节的二进制数转换为十进制数
DATAS SEGMENT ORG 3000H NUM DB 0EFH SHU DB 0,0,0,"$"DATAS ENDS STACKS SEGMENT DB 100 DUP (0)STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS START:MOV AX,DATAS MOV DS,AX MOV SI,OFFSET SHU MOV BX,2 MOV AL,NUM MOV AH,0 AG: MOV CL,10 DIV CL CMP AH...

...将一个双字节的16进制数转换为十进制,转换后的数只保留万千_百度知 ...
已知:R2 R3 R4 中是 BCD 码,其中R2中是万位,R3中是千、百位,R4中是十、个位。结果:R2 R3 中是 BCD 码,其中R2中是万、千位,R3中是百位、十位。子程序如下:MOV A, R4 ;R4原有十、个位数 SWAP A ANL A, #0FH ;截取十 MOV B, A ;保存一下 ;MOV A, R3 ...

java 字符串转化为十进制
不知道你准确的用意.如果只是想把字符串转换成十进制的,你可以把字符串先转换为字节数组,再把字节转成十进制的就行了 for(byte b:"mann".getBytes()){ System.out.print(b);}

二进制(00111001)转换为十进制方法
第8位就是2的(8-1)次方是128。把所有的值加起来。2(1-1)代表2的0次方,就是1;其他类推。从右往左每4位分割,每个分割对应十六进制的一位。如 00111001 = 0011 1001 = 39 即十六进制的39 8-4-2-1编码,这种编码形式利用了四个位元来储存一个十进制的数码。而不是普通的二进制数。

福安市18445548480: 如何将字节串转换为十六进制字符串 -
城施康复: 16进制与字符串、字节数组之间的转换 在串口通讯过程中,经常要用到 16进制与字符串、字节数组之间的转换 /// <summary> /// 字符串转16进制字节数组 /// </summary> /// <param name="hexString"></param> /// <returns></returns> private ...

福安市18445548480: 字符串怎样转化为16进制字符串 -
城施康复: 将字符串先转换为字节流,再对每个字节转换为16进制的双字节字符,不到两字节前补0,然后拼接成十六进制长字符串.

福安市18445548480: 如何将输入的字符串转换成对应的16进制字符 -
城施康复: 函数名: sscanf 功 能: 从字符串格式化输入 用 法: int sscanf(char *string, char *format[,argument,...]); 以上的 format 为 %x 就是将字符串格式化为 16 进制数 例子:#include <stdio.h> void main() { char* p = "0x1a"; int nValude = 0; sscanf(p, "%x", &nValude); printf("%d\r\n", nValude); } 输出:26

福安市18445548480: 怎么把一个字符串转换成16进制数据 -
城施康复: #include<stdio.h> int fun(char *s,int n) { int r=0;while ( *s ) {r*=n;if ( *s>='0' && *s<='9' ) r+=*s-'0';else if ( *s>='A' && *s<='Z' ) r+=*s-'A'+10;else if ( *s>='a' && *s<='z' ) r+=*s-'a'+10;s++;}return r; } void main() { int x; char s[80];scanf("%s",s); ...

福安市18445548480: 如何将字节数组转换为十六进制的字符串 -
城施康复: byte数组转换成16进制字符串String:public class CommonUtil {/*** byte数组转换成16进制字符串* @param src* @return*/ public static String bytesToHexString(byte[] src){ StringBuilder stringBuilder = new StringBuilder(); if (src == null || src.length <=...

福安市18445548480: 如何进行字符串和十六进制的转换 -
城施康复: 主要有两个方法,其实都是对现有函数的使用:方法1: sscanf()函数名: sscanf 功 能: 从字符串格式化输入 用 法: int sscanf(char *string, char *format[,argument,...]);以上的 format 为 %x 就是将字符串格式化为 16 进制数例子:#...

福安市18445548480: 如何将字节数组转换为十六进制字符串再转为十进制整数 -
城施康复: 很多时候需要将字节数组转化为16进制字符串来保存,尤其在很多加密的场景中,例如保存密钥等.因为字节数组,除了写入文件或者以二进制的形式写入数据库以外,无法直接转为为字符串,因为字符串结尾有\0,当然肯定还有其他原因....

福安市18445548480: 如何将字符串转换成十六进制数据 -
城施康复: 字符类型是整型类型的一种,将其转换成int类型,然后再输出十六进制形式即可.下面是一个示例程序.#include <iostream> using namespace std; int main() { char str_test[] = "hello world\n"; int limit = strlen(str_test); for (int inx=0; inx!=limit; ++...

福安市18445548480: 怎么把字符串转化为十六进制字符串 java -
城施康复: 思路:用一个初始化为0~9~a~f的字符串数组,也就是一个十六进制对应表,用这个对应表即可算出一个十六进制字符串的数值.方法如下:public static String str2HexStr(String str) {char[] chars = "0123456789ABCDEF".toCharArray();...

福安市18445548480: android如何将字符串转换成16进制数? -
城施康复: android字符串转换成16进制,参考如下内容:/*** 字符串转换成十六进制字符串* @param string str 待转换的ascii字符串* @return string 每个byte之间空格分隔,如: [61 6c 6b]*/ public static string str2hexstr(string str) {char[] chars = "...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网