`
kanwoerzi
  • 浏览: 1647235 次
文章分类
社区版块
存档分类
最新评论

怎样取得class文件的路径

 
阅读更多

在我们的应用中,很多时候我们需要得到我们加载的类文件的路径,那么我们如何得到呢?
在此我使用了一种方法,也许可以给需要的朋友们提供一种参考.
看我的一个例子代码:

package org.zy.base;

import java.io.File;

public class FileDemo {
public FileDemo() {
super();
}

//----------------------------------------

public String getFileDirectory() {

return null;
}

public String getCurrentWorkingDirectory() {
File f = new File(".");
return f.getAbsolutePath();
}

public String getClassDirectory() {
String cla = this.getClass().getClassLoader().getResource(".").getPath();
return cla;
}

//----------------------------------------------------------------------------

public static void main(String[] args) {
FileDemo filedemo = new FileDemo();
System.out.println(filedemo.getCurrentWorkingDirectory());
System.out.println(filedemo.getClassDirectory());
}
}

运行的结果是:
G:/develop/demo/JSFDemo/.
/G:/develop/demo/JSFDemo/classes/
由此,我们看到,我们可以通过类加载器来取得其在加载类时的类路径.
getCurrentWorkingDirectory()方法得到市当前的工程的工作目录.
以上是我的浅见,以供参考.

java获取路径几种途径- -

jdk如何判断程序中的路径呢?一般在编程中,文件路径分为相对路径和绝对路径,绝对路径是比较好处理的,但是不灵活,因此我们在编程中对文件进行操作的时候,一般都是读取文件的相对路径,
相对路径可能会复杂一点,但是也是比较简单的,相对的路径,主要是相对于谁,可以是类加载器的路径,或者是当前java文件下的路径,在jsp编程中可能是相对于站点的路径,相对于站点的路径,我们可以通过getServletContext().getRealPath("/") 和request.getRealPath("/"):这个是取得站点的绝对路径; 而getContextPath():取得站点的虚拟路径;
2:class.getClassLoader.getPath():取得类加载器的路径:什么是类加载器呢?一般类加载器有系统的和用户自己定义的;系统的ClassLoader就是jdk提供的,他的路径就是jdk下的路径,或者在 jsp编程,比如Tomcat ,取得的类加载器的位置就是tomaca自己设计的加载器的路径,
明白了这些之后,对于文件路径的操作就会相当的清楚,我们在编程的时候,只要想清楚我们所操作的文件是相对于什么路径下的,取得相对路径就可以了.



Pagination.class.getResource("/config.xml").getPath()
分享到:
评论

相关推荐

    java class文件反编译

    2、可处理多个*.class文件,可以处理文件夹内的所有文件,甚至可以处理*.jar文件; 3、带有多页面文本编辑器,也可集成在资源管理器中,随时点击右键都可进行操作; 4、支持java语法的高亮显示; 使用说明: ======...

    根据class类名在所有Jar包文件中查找class类路径以及jar名字

    譬方说要在jar包中查询某个**.class文件。用户可以不用打开Jar包,直接输入路径和要查找的文件即可搜索。 2.列出指定路径下的所有Jar包文件 3.除了对Jar包进行搜索分析外,还可以对zip包进行分析 4.填写搜索路径是...

    在jar包中查找class等文件

    譬方说要在jar包中查询目个**.class文件。用户可以不用打开Jar包,直接输入路径和要查找的文件即可搜索。 3.除了对Jar包进行搜索分析外,还可以对zip包进行分析 4.填写搜索路径是最好不要只填写“E:/”根盘目录,...

    java反编译项目工程-可以将class 文件进行修改重新导包生成修改后的jar

    3、这时候 out 路径下 会有一个 一模一样的 class 文件 这个文件是修改以后的文件 再将 main 方法去掉 后 再 执行 Build Project 4、执行 src 下的 TEST.java 类 (test.java 根据 需要配置参数几个) 会在 out 下 ...

    通过自定义Gradle插件修改编译后的class文件

    通过自定义Gradle插件,修改class文件

    在myeclipse中查看class文件 插件 jadnt158

    查看java的class文件,在网络上搜索了一下资料,这样就很方便的去查看别人的代码 在myeclipse中查看class文件,就像查看普通的java源文件一样,通过以下步骤可以做到: 安装设置步骤:1. 下载jadnt158.zip 。 2. ...

    拖动文件至对话框,获取文件路径

    VC实现文件拖拽) E2 f2 G0 x( V7 \* Q" W" I0 B 2009-08-30 21:212 i# Y0 M4 A" k: s" | 在基于对话框的程序中,默认是没有这个消息的。0 T/ R; q$ c2 O: U& i7 Y4 z 1、按下Ctrl+W,弹出类向导对话框,选择Class ...

    idea按模块路径导出

    idea按路径导出,与eclipse导出功能类似,选择文件右键选择Export Files进行文件导出。 https://blog.csdn.net/ZQB765720343/article/details/88871522

    自动拷贝class等文件

    介绍下这个打包工具 把本次你改动的java工程下的文件对应的class文件自动打包,然后热部署发布即可 如果你需要频繁改动java代码,热发布几个文件到服务器上,你会怎么做呢? 没有工具的人会手动拷贝目录 然后到...

    java swing补丁工具,打包class文件,jsp,html,js,css,xml,jar等文件,同时也支持其他格式的文件打包

    分享自己做的的打包...2.如果一个项目中有相同的文件名字的补丁,程序自动弹出,然后您可以选择要打包的补丁文件路径 3.程序自动记录你的补丁生成历史,当你在下次打开工具时,会神奇的发现依然能看到上次的打包记录

    jsp批量编译为class文件

    将jsp批量转换为class文件. 运行命令 java -jar jspcp.jar "路径1" "路径2" 路径1:webapp路径,一定是WEB-INF目录的父目录 路径2:编译后的java和class文件存储路径 路径如果有空格,一定用""包裹

    class文件编译利器

    使用方法: 第一步:将此软件放在需要反编译的.class文件路径下; 第二步:双击即可! 欢迎下载

    双击运行Class文件批处理v1.0 ByTomWillow

    双击运行class文件批处理v1.0 要求:已安装jdk(Java开发包,Java Development Kit)。 功能: 1.自动搜索jdk安装路径,并设置环境变量。 2.添加class文件打开方式(由笃行天下编写 http://hi.baidu.com/duxing...

    Eclipse中查看没有源码的Class文件的方法

    Directory for temporary files,这里设置临时文件路径,不用管. 备注:安装完成后,eclipse自动将JadClipse Class File Viewer设置成class文件的缺省打开方式。如果没有默认,可以在Eclipse的Windows——> ...

    Class文件反编译工具

    支持大部分class文件的反编译,开发过程中遇到class文件报错,打不了断点调试,只需要反编译对应class,建立同路径java文件后即可调试

    java中获取路径

    java、servlet、jsp、class等等中如何获得所在的路径

    电脑class文件修改工具 jbe-0.1.1

    电脑class文件修改工具 jbe-0.1.1 使用前一定要安装有JAVA程序,并设置指向路径(如以下三条SET),JAVA命令是要在Dos窗口下执行的(这个你懂的),当然这个批处理文件也只有在Dos下执行才能看到软件窗口 yjwuliming...

    在Jar文件里找Class文件

    在Jar文件里查找对应的类名。双击弹出界面后,点击“查询路径”,把Jar所在目录选上后,在“查询类名”中填写检索词

    java class加密保护(完全免费) v2.1

    本工具是对java class文件进行加密保护防止反编译的工具!本工具全面支持linux/unix/windows操作系统。 继推出v1.0版本后,获得了用户大量的支持与的反馈,我们再次推出本v2.0版,对加密算法进行了更大的改进,安全...

Global site tag (gtag.js) - Google Analytics