java magic number_java的class文件的magic number, cafebabe
java的class文件的前4个字节叫做magic number,
用来识别是否为java的class文件.
package pkg;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
/**
* @author qefee.com
*
*/
public class MagicNumber {
public static void main(String[] args) {
String pathname = "./bin/pkg/MagicNumber.class";
File file = new File(pathname);
FileInputStream fis = null;
try {
fis = new FileInputStream(file);
int magicNumber = 0;
magicNumber = fis.read();
magicNumber = (magicNumber << 8) ^ fis.read();
magicNumber = (magicNumber << 8) ^ fis.read();
magicNumber = (magicNumber << 8) ^ fis.read();
String magicNumberString = Integer.toHexString(magicNumber);
System.out.println(magicNumber);
System.out.println(magicNumberString);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (fis != null) {
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
或者
package pkg;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
/**
* @author qefee.com
*
*/
public class MagicNumber {
public static void main(String[] args) {
String pathname = "./bin/pkg/MagicNumber.class";
File file = new File(pathname);
FileInputStream fis = null;
try {
fis = new FileInputStream(file);
System.out.print(Integer.toHexString(fis.read()));
System.out.print(Integer.toHexString(fis.read()));
System.out.print(Integer.toHexString(fis.read()));
System.out.print(Integer.toHexString(fis.read()));
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (fis != null) {
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
输出
cafebabe
java magic number_java的class文件的magic number, cafebabe相关推荐
- java 解析修改dex_Android dex文件解析
1. 关于Android dex文件 dex文件作为Android APK的组成部分,其主要是Android的Java代码经过编译生成class文件,再经过dx命令生成的.这里面包括了APK的源码,反 ...
- Java反编译字节码文件
如何查看 Java 的字节码文件? 在 Java 中,字节码文件.class实际上是二进制文件,并不能直接查看.要想查看,我们只能通过反编译对其进行解析,然后查看解析后的源码. 如何反编译字节码文件 ...
- java并发读取相同的文件_高效读取大文件,再也不用担心 OOM 了!
最近阿粉接到一个需求,需要从文件读取数据,然后经过业务处理之后存储到数据库中.这个需求,说实话不是很难,阿粉很快完成了第一个版本. 内存读取 第一个版本,阿粉采用内存读取的方式,所有的数据首先读读取到 ...
- 保存Java程序状态及设置Properties文件
保存Java程序状态及设置Properties文件 作者: 刻录机, 出处:中国IT实验室, 责任编辑: 包春林, 2008-04-11 00:00 使用Properties文件来保存.Propert ...
- Java 中几种获取文件路径的方式
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源 | 公众号「码农小胖哥」 1. 前言 Java 开 ...
- Java项目中读取properties文件,以及六种获取路径的方法
下面1-4的内容是网上收集的相关知识,总结来说,就是如下几个知识点: 最常用读取properties文件的方法 InputStream in = getClass().getResourceAsStr ...
- java实现把一个大文件切割成N个固定大小的文件
这个好像是我一年前去面试时的一道面试题,分享一下!考 java I/O 的! //java实现把一个大文件切割成N个固定大小的文件 package com.johnny.test; import ja ...
- 把Java程序打包成jar文件包并执行
把Java程序打包成jar文件包并执行 1.首先要确认自己写的程序有没有报错. 2.第一次我写的是Web Project到现在,我一直没有执行成功,所以最好创建的是java Project 打包步骤: ...
- Python:pmml格式文件的简介、安装、使用方法(利用python将机器学习模型转为Java常用的pmml格式文件)之详细攻略
Python:pmml格式文件的简介.安装.使用方法(利用python将机器学习模型转为Java常用的pmml格式文件)之详细攻略 目录 pmml格式文件的简介 1.PMML结构 pmml安装 pmm ...
最新文章
- 平时用电脑的一些技巧
- 如何分割字符串以便可以访问项目x?
- Java常见面试题及答案汇总
- 使用spyder编译器单步调试python
- 换ip_换IP对云手机来说是好事吗?
- SecureCRT 基本设置
- disp语句怎么格式 matlab_matlab输出语句print
- 周遭心理学的应用-什么是心理学?
- 《东周列国志》第七十回 杀三兄楚平王即位 劫齐鲁晋昭公寻盟
- 视频号怎么赚钱?视频号有什么功能?
- 汽车覆盖件冲压模具铸造工艺研究
- shell脚本(linux)
- 理光M340W激光打印机加粉清零
- git 提交代码某个文件夹一直提交不上去
- 2022-2023年度必备宇宙最全Windows系统软件清单
- 基于时延法的麦克风阵列声源定位分析
- python类不支持多继承_关于Python类的多继承中的MOR继承顺序问题
- RJ-45双绞线的制作和测试-网络实验1
- 线上展厅vr展厅虚拟解说 广州商迪
- 使用路缘石成型机一次施工作业成型
热门文章
- 学计算机swot分析怎么写,计算机专业学生个人SWOT分析示例
- 如何预编译ASP.Net程序
- 骁龙相机 android8,谷歌相机移植成功,支持骁龙845,小米8小米MIX2S亲测可用
- ios 密码大小写数字 符号_iOS 用户密码 数字字母特殊符号设置 判断
- 来把狠的——传一个肖邦的《Black Key Exercise(黑键练习曲)》
- 除了百度、搜狗搜索你还知道哪些好用的搜索引擎吗?
- Visualbox下安装增加功能报错的处理方法
- 【总结】云集各大高校 — 数学建模经验分享(万字总结)
- C++实现字符串的反转
- JavaScript基础(四)字符串操作