私はいくつかのbase64エンコーディングを必要とする小さな仕事に取り組んでいます。私は頭でそれをやろうとしていますが、迷子になっています。 数字が長いからbase64文字
私はJavaの長い形式の13桁の番号を持っていると言う:1294705313608、1294705313594、1294705313573は、私はそれにいくつかの処理を行い、bascially私はもので、それを追加し、この番号を取るバイト配列に入れ、その後に変換します
String b64String = new sun.misc.BASE64Encoder().encodeBuffer(bArray);
ここで、元の番号の最初の3桁は決して変更されません。したがって、129は上記の数で一定です。私はそれらの数字に対応する文字数が結果のbase64文字列で変更されないことを確認したい。
バイト配列に長時間シリアル化するコード。最初の2バイトは常に0なので無視します。
bArray [0] =(byte)(time >>> 40);
bArray [1] =(バイト)(時刻>>> 32);
bArray [2] =(byte)(時刻>>> 24);
bArray [3] =(バイト)(時刻>>> 16);
bArray [4] =(バイト)(時刻>>> 8);
bArray [5] =(バイト)(時刻>>> 0);
ありがとうございました。
メモ: 私はbase64が6ビットをとり、1文字を作成することを知っています。したがって、最初の3桁の数字が変更されない場合、元の64文字には何文字も変更されません。 これはHW割り当てではありませんが、私はエンコーディングに詳しくはありません。
これは宿題だと思うが、それほどタグ付けされていない。 –
他の "stuff"と一緒にバイト配列にlongを直列化するために使用するコードを投稿できますか? – dkarp
@dkarp:コードを掲載しました。 – codeObserver