使用Java从十六进制中提取64位数字

使用Java从十六进制中提取64位数字,java,numbers,hex,long-integer,Java,Numbers,Hex,Long Integer,我希望这是有道理的。当我使用十六进制编辑器并将鼠标悬停在十六进制值上时,您可以看到一个8、16、32和64位的数字(有关更好的想法,请参见屏幕截图) 有没有一种方法可以用Java提取那个数字,我需要提取64位的数字,我不知道这是否可行 如果有人知道我会非常棒 非常感谢。如果您想要将十六进制字符串转换为64位数字,可以使用 long asHex = Long.parseLong(theHexValue,16); // 16 denotes as hex 这将产生一个有符号的长值。如果您正在查找

我希望这是有道理的。当我使用十六进制编辑器并将鼠标悬停在十六进制值上时,您可以看到一个8、16、32和64位的数字(有关更好的想法,请参见屏幕截图)

有没有一种方法可以用Java提取那个数字,我需要提取64位的数字,我不知道这是否可行

如果有人知道我会非常棒


非常感谢。

如果您想要将十六进制字符串转换为64位数字,可以使用

long asHex = Long.parseLong(theHexValue,16); // 16 denotes as hex
这将产生一个有符号的长值。如果您正在查找
>2^63
,则需要使用BigInteger

BigInteger asHex = new BigInteger(theHexValue,16);

那么,您是否将十六进制值作为字符串,并希望在Java中将其用作数字?或者你有一个文件,你想从中读取字节?或者您想用Java连接到您的十六进制编辑器?十六进制编辑器是否遵守在您的平台上复制和粘贴的正常规则?您可以复制一个数字,然后粘贴到命令提示符下吗?没有足够的信息回答您的问题。你需要知道数字的格式。64位整数可以用多种方式表示。是小恩迪安吗?大恩迪安?没有签名?两的补码?@rliby在Java中,64位数字完全是单向表示的-
long
@glowcoder,是的,但是Simon没有说这个文件来自哪里。我们有任何理由认为这实际上是一个Java长文件吗?