Re: [問題] C++的time_t怎麼轉換成Java的Date()
※ 引述《forpure (人生如夢)》之銘言:
: C++的time_t是4位元
: Java的Date是8位元
: 現在client端是C++的程式傳來一個4個byte值
: 這4個byte值,如果Server用C++程式可轉成現在的時間
: 但現在server端是Java程式,要怎麼把接進來的4個byte值,轉換成正確的時間日期??
: 而且4個byte的值中
: 有時候會參雜負數
: Ex:
: byte[0]=38,byte[1]=-106,byte[2]=-104,byte[3]=75
: 轉成正確時間大約是 2010年3月11日下午3點5分 左右
: 不知道Java該怎麼轉換 @@
: 請各路高手幫幫忙
: 感謝你們~
順便拿來做教學,
首先,
: byte[0]=38,byte[1]=-106,byte[2]=-104,byte[3]=75
: 轉成正確時間大約是 2010年3月11日下午3點5分 左右
這東西怎麼從前一句變成後面一句, 前面那一句裡面哪一格放的是什麼東西,
哪一格乘上什麼東西怎麼加, 格式如何, 是 java 的問題嘛?
C&C++ 版樓下左轉謝謝.
其次,
你從一個日期格式中拿到的無非就是以秒當單位或者是以毫秒當單位,
又或者是匹哩啪啦不知道以什麼沒看過的單位為基底的長整數,
要不然就是清楚的拿到年月日時分秒等等各個細項,
如果是長整數, 前面的推文有提過了.
拿到細項的話, Date 的 API 說的很清楚
http://java.sun.com/javase/7/docs/api/java/util/Date.html
Date(int year, int month, int date, int hrs, int min, int sec)
Deprecated. As of JDK version 1.1, replaced by Calendar.set(下略
所以就去看 Calendar 的 API 裡面就有什麼東西怎麼塞的說明.
你說你要 Date, 就去 Method Summary 的 Modifier and Type 一路看下來
看有沒有傳回值是 Date 的. 確認裡面的敘述是你要的東西, 那就用啊.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.160.32.112
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):