获取字节码的文件路径、获取一个类的具体名称、获取一个类的简单名称、获取一个类的包名

来源:互联网 发布:淘宝网人工投诉电话 编辑:程序博客网 时间:2024/05/16 07:56


获取字节码文件的文件路径、获取一个类的具体名称、获取一个类的简单名称、获取一个类的包名



package com.get_src_path;import java.io.File;import java.net.URLDecoder;public class Path_Test {/** * 演示的功能: * 获取字节码的文件路径 * 取得代码路径下的全部文件 * 获取一个类的具体名称 *获取一个类的简单名称 *获取一个类的包名 * */public static void main(String[] args) throws Exception {//这将取得 运行时的 类的字节码的那个路径String path =Thread.currentThread().getContextClassLoader().getResource("").getPath();//(中文路径会 解码出错,所以在下面是对路径进行了解码)System.out.println(path);//这句可能会报异常  ,代码作用,解码路径,输出正常的中文路径String path2=URLDecoder.decode(path, "utf-8");System.out.println(path2);//下面取得代码路径下的全部文件File f=new File(path2);System.out.println("目录存在吗?"+f.exists());File[] arr_file=f.listFiles();//遍历文件数组,输出文件名for (File tempFile: arr_file){System.out.println(tempFile.getName());}System.out.println("--------------------------------");String path3=(new Path_Test()).getClass().getName();//.getPackage().getName();System.out.println("获取该类的具体名称path3="+path3);String path4=(new Path_Test()).getClass().getSimpleName();//.getPackage().getName();System.out.println("获取该类的简单名称path4="+path4);String path5=(new Path_Test()).getClass().getPackage().getName();//.getPackage().getName();System.out.println("获取该类的包名path5="+path5);}}



运行结果:

/F:/%e5%bf%ab%e7%9b%98/%e7%bc%96%e7%a8%8b%e5%b7%a5%e4%bd%9c%e7%a9%ba%e9%97%b4_Recent/MyEclipse_10/J2SE_Test/bin/
/F:/快盘/编程工作空间_Recent/MyEclipse_10/J2SE_Test/bin/
目录存在吗?true
C.class
C2.class
ClipArray.class
com
http
I.class
maopao
my_config_test.xml
StringArray.class
Student.class
Test.class
Test2.class
Undergraduate.class
ValidateNum.class
--------------------------------
获取该类的具体名称path3=com.get_src_path.Path_Test
获取该类的简单名称path4=Path_Test
获取该类的包名path5=com.get_src_path






原创粉丝点击