weixin_42116431 2024-01-24 15:50 采纳率: 37.5%
浏览 12
已结题

java8个字节的字符串转双精度浮点

如何实现8个字节的字符串转成双精度浮点型数据。

下图中的“C05B204151ACB340”为数据源,转成浮点型结果为5036.317,请问如何实现。

img

  • 写回答

5条回答 默认 最新

  • 叫兽-郭老师 Java领域新星创作者 2024-01-24 15:55
    关注

    先参考我这个!

    import java.nio.ByteBuffer;
    import java.nio.ByteOrder;
    
    /**
     * @author caozhen
     * @ClassName Teest
     * @description: TODO
     * @date 2024年01月24日
     * @version: 1.0
     */
    public class Teest {
        public static void main(String[] args) {
            String hex = "C05B204151ACB340";
            double value = hexToDouble(hex);
            System.out.println(value);  // 输出:5036.317
        }
    
        public static double hexToDouble(String hex) {
            byte[] bytes = hexStringToByteArray(hex);
            return ByteBuffer.wrap(bytes).order(ByteOrder.LITTLE_ENDIAN).getDouble();
        }
    
        public static byte[] hexStringToByteArray(String s) {
            int len = s.length();
            byte[] data = new byte[len / 2];
            for (int i = 0; i < len; i += 2) {
                data[i / 2] = (byte) ((Character.digit(s.charAt(i), 16) << 4)
                        + Character.digit(s.charAt(i+1), 16));
            }
            return data;
        }
    }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 2月1日
  • 已采纳回答 1月24日
  • 创建了问题 1月24日

悬赏问题

  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化
  • ¥15 Mirare PLUS 进行密钥认证?(详解)
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证
  • ¥20 想用ollama做一个自己的AI数据库
  • ¥15 关于qualoth编辑及缝合服装领子的问题解决方案探寻
  • ¥15 请问怎么才能复现这样的图呀