我正在尝试读取幻数/字节来检查文件的格式。在 Linux 机器上,逐字节读取文件的工作方式是否相同?
编辑:下面显示了使用 int 从类文件中获取魔术字节。我正在尝试对可变数量的字节做同样的事情。
http://www.rgagnon.com/javadetails/java-0544.html
我不确定我是否理解您要做什么,但听起来您要执行的操作与您链接到的代码正在执行的操作不同。
java 类格式被指定为以幻数开头,因此代码只能用于验证文件是否可能是 java 类。您不能使用相同的逻辑并将其应用于 arbritraty 文件格式。
编辑:..还是您只想检查wav文件?
Edit2:Java中的所有内容都是大端序,这意味着您可以使用DataInputStream.readInt从文件中读取前四个字节,然后将返回的int与0x52494646进行比较(RIFF作为大端整数)