如何用Java读取.EXE文件的内容
在 Java 中读取可执行文件的可能选项和最合适的选项是什么。
我想生成 .exe 文件的十六进制表示形式。我正在考虑以二进制方式读取文件,然后进行转换。但是我怎样才能读取.exe呢?
What are the possible options and the most appropiate for reading an executable file in Java.
I want produce the hexadecimal representation of an .exe file. Im thinking of reading the file in binary and then doing the conversion. But how can i read the .exe?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
1)以字节形式读取文件。使用
2)将每个字节转换为十六进制格式。
1) read the file in as bytes. use
2) convert each byte to hex format.
编辑
我没想到你会想要它作为一个字符串。修改了示例来执行此操作。它的性能应该比使用 BufferedReader 稍好一些,因为我们自己进行缓冲。
Edit
It didn't occur to me that you'd want it as a string. Modified the example to do so. It should perform slightly better than using a
BufferedReader
since we're doing the buffering ourselves.Java 中的
InputStream
是读取二进制文件的主要类。您可以使用FileInputStream
从文件中读取字节。然后,您可以使用 read() 方法读取每个字节,并根据需要将该字节显示为 2 个十六进制字符。An
InputStream
in Java is the primary class for reading binary files. You can use aFileInputStream
to read bytes from a file. You could then read in each byte with theread()
method and display that byte as 2 hex characters if you wanted.