GSM デバイスからの UDP パケットをリッスンするソケット サーバーがあります。一部のデータは、正確にマルチバイトを必要とする時間など、マルチバイトとして取得されます。これは例です:
179,248,164,14
バイトは 10 進数で表されます。私の目標は、それを秒に変換することです:
245692595
私はそれをやろうとしていて、言われました:
「これらの 4 バイトを取得し、リトル エンディアン形式の単一の長整数に配置する必要があります。データの読み取りとエンコードに Python を使用している場合は、.read() と struct.unpack() の使用を確認する必要があります。メソッドを使用して整数に変換します。結果の値は、2000 年 1 月 1 日からの秒数です。」
だから、私はこれをやろうとしました:
%w(179 248 164 14).sort.map(&:to_i).inject(&:+)
=> 605
そして、私は明らかに間違った答えを得ています。