我必须在 BigInteger 中存储一个字符串(非数字,可以包含任何 UTF8 字符)来执行一些数学运算。我需要确定性的转换
BigInteger mybigint = new BigInteger(mystring.getBytes());
好像不是……</p>
我还需要能够将它从 BigInteger 转换回 String。如果我将 String 转换为 BigInteger 并返回,那么之后它需要是相同的。
有谁知道如何做到这一点?先感谢您!
我必须在 BigInteger 中存储一个字符串(非数字,可以包含任何 UTF8 字符)来执行一些数学运算。我需要确定性的转换
BigInteger mybigint = new BigInteger(mystring.getBytes());
好像不是……</p>
我还需要能够将它从 BigInteger 转换回 String。如果我将 String 转换为 BigInteger 并返回,那么之后它需要是相同的。
有谁知道如何做到这一点?先感谢您!
不要这样做。从根本上说,您没有数字信息。不要假装它是数字信息。
定义“数学运算”的含义并编写一个类来执行它们。BigInteger
几乎可以肯定这里是错误的表示。
这是确定性的:
BigInteger mybigint = new BigInteger(mystring.getBytes("UTF-8"));
您可以使用
new String(mybigint.toByteArray(), "UTF-8");
我不能排除此过程有某种用途,但如果您不确定,请毫不犹豫地提及您为什么这样做。