0

システムの現在の時刻 (EPOCH) を含むメッセージを送信する必要があり、次の詳細に従って送信されます。EPOCH 時間もナノ秒単位で送信されます。

field - current_time
type - UINT64
byte size - 8
value - 0 to 1.84467E+19

私のメッセージ構造は以下の通りです、

class MsgHeader {
   int message_length;
   String sender_sys;
   String destination_sys;
   **int current_time;**
   char message_type;

................

}

Javaを使用してこれを行う方法を教えてください。

4

2 に答える 2

2
long current_time = System.currentTimeMillis() * 1000000L;
于 2013-03-01T02:55:56.730 に答える
0

以下のように current_time の long 値をバイトに変換しました。

public static byte[] longToBytes(long current_time) throws IOException {
        ByteArrayOutputStream baos = new ByteArrayOutputStream(Long.SIZE / 8);
        DataOutputStream dos = new DataOutputStream(baos);
        dos.writeLong(current_time);
        byte[] result = baos.toByteArray();
        dos.close();
        System.out.println(result.length);//length=8bytes
        return result;
    }
于 2013-03-01T03:43:31.873 に答える