java bcd码转16进制数据

yyl1007931988 2013-07-01 02:58:34
java bcd码如何转16进制数据
...全文
396 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yyl1007931988 2013-07-02
  • 打赏
  • 举报
回复
引用 8 楼 huhui_bj 的回复:
[quote=引用 7 楼 yyl1007931988 的回复:] 我QQ是254822219 你加我QQ说吧。。。我那个BCD码转成10进制的字符串后位数特别多有2000多位存的是照片信息,int型根本放不下。。。。
如果int存不下,那就long吧,你说的2000多位是什么?[/quote] 你加我QQ 我QQ和你说吧。。。
最美的词 2013-07-02
  • 打赏
  • 举报
回复
引用 7 楼 yyl1007931988 的回复:
我QQ是254822219 你加我QQ说吧。。。我那个BCD码转成10进制的字符串后位数特别多有2000多位存的是照片信息,int型根本放不下。。。。
如果int存不下,那就long吧,你说的2000多位是什么?
yyl1007931988 2013-07-02
  • 打赏
  • 举报
回复
我QQ是254822219 你加我QQ说吧。。。我那个BCD码转成10进制的字符串后位数特别多有2000多位存的是照片信息,int型根本放不下。。。。
最美的词 2013-07-02
  • 打赏
  • 举报
回复
上面不是告诉你了吗?
// 十进制转化为十六进制,结果为C8。
Integer.toHexString(200); 
yyl1007931988 2013-07-02
  • 打赏
  • 举报
回复
引用 4 楼 huhui_bj 的回复:
字符串转数字,可以调用响应的方法,如字符串型int转int:
int i = Integer.parseInt("200");
引用 4 楼 huhui_bj 的回复:
字符串转数字,可以调用响应的方法,如字符串型int转int:
int i = Integer.parseInt("200");
不是字符串转数字,是字符串类型的十进制怎么转成16进制?
最美的词 2013-07-02
  • 打赏
  • 举报
回复
字符串转数字,可以调用响应的方法,如字符串型int转int:
int i = Integer.parseInt("200");
最美的词 2013-07-02
  • 打赏
  • 举报
回复
引用 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进制啊?[/quote] 字符串转数字,这个你不会?
yyl1007931988 2013-07-02
  • 打赏
  • 举报
回复
引用 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进制啊?
最美的词 2013-07-01
  • 打赏
  • 举报
回复
思路:先将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); 

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧