`
isiqi
  • 浏览: 16079117 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

查看class编译所用的JDK版本

阅读更多

/*
* 创建日期 2011-5-16
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
package com.jdk.test;

import java.io.FileInputStream;


public class JavaVersionUtil {

private static final String str = "F:\\work\\problems\\20110516\\UtanBase\\com\\utanBase\\comm\\util\\StringUtil.class";

// 版本号对应:
// 5.0
// 版本号(version):49.0
// 6.0
// 版本号(version):50.0
// 1.4
// 版本号(version):46.0
// 1.3
// 版本号(version):45.3

public static void main(String args[]) {
try {
// 读取文件数据,文件是当前目录下的First.class
FileInputStream fis = new FileInputStream(str);
// 文件数据
byte[] data = new byte[20];
// 读取文件到字节数组
fis.read(data);
// 关闭文件
fis.close();
// 解析文件数据
parseFile(data);
} catch (Exception e) {
System.out.println(e);
}
}

private static void parseFile(byte[] data) {
// 输出魔数
System.out.print("魔数(magic):0x");
System.out.print(Integer.toHexString(data[0]).substring(6)
.toUpperCase());
System.out.print(Integer.toHexString(data[1]).substring(6)
.toUpperCase());
System.out.print(Integer.toHexString(data[2]).substring(6)
.toUpperCase());
System.out.println(Integer.toHexString(data[3]).substring(6)
.toUpperCase());
// 主版本号和次版本号码
int minor_version = (((int)data[4]) << 8)+ data[5];
int major_version = (((int)data[6]) << 8)+ data[7];
System.out.println("版本号(version):" + major_version + "."
+ minor_version);
}
}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics