1
私は、任意の長さのバイト[]をの正のの数値(数字の文字列表現)に可逆的に変換する方法を探しています。Java:ByteArrayを正の数に変換する逆の変換をする
のBigIntegerは、ソリューションを提供しています:
byte[] originalBytes = ...
String string = new BigInteger(originalBytes).toString();
...
byte[] decodedBytes = new BigInteger(string).toByteArray();
をしかし、私は優雅に負の値(またはどこ記号を保存する)と可逆過程を保つを取り除くするかどうかはわかりません。
同じ数字を残しても、負の値を取り除く方法はわかりません。あなたはすべての数字に127を加えることができますが、明らかにすべての数字は異なっています。プロセスは可逆的になります。 –
「負の値を正常に取り除いてください」 –
@Tron受け取ったバイトに2の補数形式がない、つまり符号なしバイトを扱っていると言っていますか?希望の結果の簡単な例であなたの質問を拡大できますか? –