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


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



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






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值