当前位置:编程学习 > JAVA >>

java bcd码转16进制数据

java bcd码如何转16进制数据 --------------------编程问答-------------------- 思路:先将BCD码转为10进制,10进制再转为16进制
第一步:BCD码转10进制:

/**
    * @函数功能: BCD码转为10进制串(易做图数据)
    * @输入参数: BCD码
    * @输出结果: 10进制串
    */
public static String bcd2Str(byte[] bytes){
    StringBuffer temp=new StringBuffer(bytes.length*2);

    for(int i=0;i<bytes.length;i++){
     temp.append((byte)((bytes[i]& 0xf0)>>>4));
     temp.append((byte)(bytes[i]& 0x0f));
    }
    return temp.toString().substring(0,1).equalsIgnoreCase("0")?temp.toString().substring(1):temp.toString();
}


第二部:10进制转16进制:

// 十进制转化为十六进制,结果为C8。
Integer.toHexString(200); 
--------------------编程问答--------------------
引用 1 楼 huhui_bj 的回复:
思路:先将BCD码转为10进制,10进制再转为16进制
第一步:BCD码转10进制:

/**
    * @函数功能: BCD码转为10进制串(易做图数据)
    * @输入参数: BCD码
    * @输出结果: 10进制串
    */
public static String bcd2Str(byte[] bytes){
    StringBuffer temp=new StringBuffer(bytes.length*2);

    for(int i=0;i<bytes.length;i++){
     temp.append((byte)((bytes[i]& 0xf0)>>>4));
     temp.append((byte)(bytes[i]& 0x0f));
    }
    return temp.toString().substring(0,1).equalsIgnoreCase("0")?temp.toString().substring(1):temp.toString();
}


第二部:10进制转16进制:

// 十进制转化为十六进制,结果为C8。
Integer.toHexString(200); 


转成后的十进制不是字符串类型吗?怎么转成16进制啊? --------------------编程问答--------------------
引用 2 楼 yyl1007931988 的回复:
Quote: 引用 1 楼 huhui_bj 的回复:

思路:先将BCD码转为10进制,10进制再转为16进制
第一步:BCD码转10进制:

/**
    * @函数功能: BCD码转为10进制串(易做图数据)
    * @输入参数: BCD码
    * @输出结果: 10进制串
    */
public static String bcd2Str(byte[] bytes){
    StringBuffer temp=new StringBuffer(bytes.length*2);

    for(int i=0;i<bytes.length;i++){
     temp.append((byte)((bytes[i]& 0xf0)>>>4));
     temp.append((byte)(bytes[i]& 0x0f));
    }
    return temp.toString().substring(0,1).equalsIgnoreCase("0")?temp.toString().substring(1):temp.toString();
}


第二部:10进制转16进制:

// 十进制转化为十六进制,结果为C8。
Integer.toHexString(200); 


转成后的十进制不是字符串类型吗?怎么转成16进制啊?

字符串转数字,这个你不会?
--------------------编程问答-------------------- 字符串转数字,可以调用响应的方法,如字符串型int转int:
int i = Integer.parseInt("200");
--------------------编程问答--------------------
引用 4 楼 huhui_bj 的回复:
字符串转数字,可以调用响应的方法,如字符串型int转int:
int i = Integer.parseInt("200");


引用 4 楼 huhui_bj 的回复:
字符串转数字,可以调用响应的方法,如字符串型int转int:
int i = Integer.parseInt("200");


不是字符串转数字,是字符串类型的十进制怎么转成16进制? --------------------编程问答-------------------- 上面不是告诉你了吗?
// 十进制转化为十六进制,结果为C8。
Integer.toHexString(200); 


--------------------编程问答-------------------- 我QQ是254822219 你加我QQ说吧。。。我那个BCD码转成10进制的字符串后位数特别多有2000多位存的是照片信息,int型根本放不下。。。。
--------------------编程问答--------------------
引用 7 楼 yyl1007931988 的回复:
我QQ是254822219 你加我QQ说吧。。。我那个BCD码转成10进制的字符串后位数特别多有2000多位存的是照片信息,int型根本放不下。。。。

如果int存不下,那就long吧,你说的2000多位是什么? --------------------编程问答--------------------
引用 8 楼 huhui_bj 的回复:
Quote: 引用 7 楼 yyl1007931988 的回复:

我QQ是254822219 你加我QQ说吧。。。我那个BCD码转成10进制的字符串后位数特别多有2000多位存的是照片信息,int型根本放不下。。。。

如果int存不下,那就long吧,你说的2000多位是什么?


你加我QQ 我QQ和你说吧。。。
补充:Java ,  Web 开发
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,