java程序中 获取本类的绝对路径(myeclipse,idea)

本文介绍了在MyEclipse和IntelliJ IDEA两种IDE环境中如何正确获取当前类的绝对路径,对比了两种环境下路径获取的区别,并提供了一种适用于IDEA的有效解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在写证书请求的时候遇到需要到绝对路径下面去寻找证书


而在 myeclipse里面当前类的绝对路径是这样获得的:


package fafa;


public class Test {
private static String currentDir = null;
public static void main(String[] args) {
currentDir = Test.class.getResource("").getPath();
if(!currentDir.endsWith("/")){
currentDir += "/";
}
System.out.println(currentDir);
}
}


而在idea中,这样获取的结果并不是当前类的结果,而是当前类通过编译后的路径,也就是说实在target/classes下的路径

那在idea中如何获取当前类的绝对路径呢?

下面这个方法便可以满足需求,

获取当前类的路径无非就是读取文件而已,我们可以这样做:

InputStream fiKeyFile = CryptNoRestrict.class.getResourceAsStream("/"+currentDir);
代码中的  currentDir 便是文件的名称,例如:text.pfx 

这样便可以直接寻找的到文件,然后转换为流的形式

至于如何获取当未加载的类路径,暂不清楚,下次补充!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值