亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

4字節長整型,如何轉變為java的long數字?

4字節長整型,如何轉變為java的long數字?

湖上湖 2018-07-22 07:50:19
如: 7D 17 4F 5B這是一個時間字節。大概應該是 1531881242100 才得到當前的時間截。但是,我解碼出來,總是數字不對。這是從modbus里讀取來的數據。反正,高低位,轉換來轉換去,就是時間不對。如何求解?以上得出一個 long值,然后用SimpleDateFormat 轉為 時間格式的內容。
查看完整描述

2 回答

?
長風秋雁

TA貢獻1757條經驗 獲得超7個贊

把hex轉換為long就可以了,代碼就不貼了。你這個四字節是32位,而long是64位,所以你應該是少算了4個字節。

查看完整回答
反對 回復 2018-07-22
?
精慕HU

TA貢獻1845條經驗 獲得超8個贊

經過不斷嘗試,無法解析.

 @Test    public void test9(){
        Date date=new Date(1531910014000L);
        System.out.println(date);
    }
    
    @Test    public void test10(){        String[] strs=new String[]{"7D","17","4F","5B"};        long lng=1;        for(int i=0;i<strs.length;i++){
            lng+=Integer.valueOf(strs[i], 16) * Math.pow(256, Math.abs(i));
        }
        lng*=1000;
        System.out.println(lng);
    }

test10輸出:1531910014000
test9輸出:Wed Jul 18 18:33:34 CST 2018

查看完整回答
反對 回復 2018-07-22
  • 2 回答
  • 0 關注
  • 618 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號