精华内容
下载资源
问答
  • 主要介绍了java获取系统路径字体、得到某个目录下的所有文件名、获取当前路径,需要的朋友可以参考下
  • java 获取当前路径

    2013-04-19 10:17:00
    如何在java 编程中获取当前的路径
  • 开发web工程时经常要获取工程的根目录,自己用Java实现的获取Tomcat下war包部署的Web工程根目录路径的方法,主要利用web工程默认的目录结构,此外也可以指定工程名称获取工程目录的绝对路径
  • java实现 获取指定路径下 指定格式 的所有文件
  • JAVA获取各种路径总结

    2010-09-09 11:15:48
    JSP中获得当前应用的相对路径和绝对路径  根目录所对应的绝对路径、 文件的绝对路径 、 当前web应用的绝对路径、 取得请求文件的上层目录……
  • windows linux 下,获取java项目绝对路径的方法,struts2设置了struts.multipart.saveDir后会在根目录建立文件夹,这样会涉及linux下的权限问题
  • java获取jdk路径

    2009-12-20 23:40:02
    java获取jdk路径 根据环境变量和正则表达式匹配
  • Java获取文件路径的几种方式。 关于绝对路径和相对路径
  • 获取路径下文件名、大小、修改时间、类型, 然后自己创建个实体类,在打印位置将文件属性set到实体类的相对应属性。原谅小弟收积分。我也是想赚点积分学习而已。提倡大家免积分分享。走向真正的开源。。。。
  • 最近在做项目的时候,自己写了一些配置参数的读取,将配置文件放到具体的位置,然后让程序根据当前类的路径...如果在 .java 文件中直接写// public static String Config = "config.properties"; 则该路径指向的就是...

    最近在做项目的时候,自己写了一些配置参数的读取,将配置文件放到具体的位置,然后让程序根据当前类的路径寻找配置文件的路径,但是,发现eclipse的开发坏境下是可以顺利读取到指定路径下的配置文件中的配置参数的,

    但是当将项目放到Tomcat下  或者 将项目打包成可执行jar包之后,编译后的class文件却读取不到了开发环境下寻找的配置文件了。

    如果在 .java 文件中直接写// public static  String Config = "config.properties";  则该路径指向的就是项目的 src 的同级目录(直接将配置文件放到项目的根目录下)

    经过查找资料和进行验证,现将读取class文件相对路径下配置文件的方法汇总如下:

    方法一:使用System获取路径

    方法二:使用当前类的ProtectionDomain或者ClassLoader获取路径

    方法三:使用Thread获取路径

    方法一:

    示例:

     public static  final String URLConfig = System.getProperty("user.dir").replace("bin", "webapps")+"/URLConfig.properties";//这种是将配置文件放到Tomcat的webapps的目录下

    其中的 System.getProperty("user.dir")  为获取用户当前工作目录

    java的System.getProperty()方法可以获取的值

    获取的代码示例:

    public   class  SystemProperty {  
        public   static   void  main(String args[]) {     
        System.out.println("java_vendor:"  + System.getProperty( "java.vendor" ));     
        System.out.println("java_vendor_url:"      
                 + System.getProperty("java.vendor.url" ));     
        System.out.println("java_home:"  + System.getProperty( "java.home" ));     
        System.out.println("java_class_version:"      
                 + System.getProperty("java.class.version" ));     
        System.out.println("java_class_path:"      
                + System.getProperty("java.class.path" ));     
        System.out.println("os_name:"  + System.getProperty( "os.name" ));     
        System.out.println("os_arch:"  + System.getProperty( "os.arch" ));     
        System.out.println("os_version:"  + System.getProperty( "os.version" ));     
        System.out.println("user_name:"  + System.getProperty( "user.name" ));     
        System.out.println("user_home:"  + System.getProperty( "user.home" ));     
        System.out.println("user_dir:"  + System.getProperty( "user.dir" ));     
        System.out.println("java_vm_specification_version:"      
                + System.getProperty("java.vm.specification.version" ));     
        System.out.println("java_vm_specification_vendor:"      
                + System.getProperty("java.vm.specification.vendor" ));     
        System.out.println("java_vm_specification_name:"      
                + System.getProperty("java.vm.specification.name" ));     
        System.out.println("java_vm_version:"      
                + System.getProperty("java.vm.version" ));     
        System.out.println("java_vm_vendor:"      
                + System.getProperty("java.vm.vendor" ));     
        System.out     
                .println("java_vm_name:"  + System.getProperty( "java.vm.name" ));     
        System.out.println("java_ext_dirs:"      
                + System.getProperty("java.ext.dirs" ));     
        System.out.println("file_separator:"      
                + System.getProperty("file.separator" ));     
        System.out.println("path_separator:"      
                + System.getProperty("path.separator" ));     
        System.out.println("line_separator:"      
                + System.getProperty("line.separator" ));     
    }

     

    上面示例引用的博客地址:https://blog.csdn.net/capmiachael/article/details/51895823

     

    方法二:

    示例1:

    复制代码

    public static String getMyDIR(){//获取当前类文件的绝对路径
    String jarWholePath = ConfigerPraram.class.getProtectionDomain().getCodeSource().getLocation().getFile(); 
    try { 
    //保险起见,将路径进行decode转码
    jarWholePath = java.net.URLDecoder.decode(jarWholePath, "UTF-8"); 
    } catch (UnsupportedEncodingException e) { System.out.println(e.toString()); } 
    //获取jar包的上级目录
    String jarPath = new File(jarWholePath).getParentFile().getAbsolutePath(); 
    return jarPath;
    }

    复制代码

    示例2:

    复制代码

    /**
         * 获取项目所在路径
         * 
         * @return
         */
        public static String getRealPath() {
         //通过类加载器获取jar包的绝对路径
            String realPath = MyPath.class.getClassLoader().getResource("")
                    .getFile();
            java.io.File file = new java.io.File(realPath);
            realPath = file.getParentFile().getAbsolutePath(); //获取jar包的上级目录
    try {
           //路径decode转码
                realPath = java.net.URLDecoder.decode(realPath, "utf-8");
            } catch (Exception e) {
                e.printStackTrace();
            }  
        return realPath ; 
      }

    复制代码

     

     

    方法三:(该方法还未做验证,引用博客:https://blog.csdn.net/z69183787/article/details/22774537)

    Thread.currentThread().getContextClassLoader().getResource("")来得到当前的classpath的绝对路径的URI表示法

    Application可以通过new FileInputStream("xx.properties");直接在classes一级获取。关键是有时我们需要通过web修改配置文件,我们不 能将路径写死了。经过测试觉得有以下心得:

    1.servlet中读写。如果运用Struts 或者Servlet可以直接在初始化参数中配置,调用时根据servlet的getRealPath("/")获取真实路径,再根据String file = this.servlet.getInitParameter("abc");获取相对的WEB-INF的相对路径。
    例:
    InputStream input =Thread.currentThread().getContextClassLoader().getResourceAsStream("abc.properties"); 
    Properties prop = new Properties();
    prop.load(input);
    input.close();

    prop.setProperty("abc", “test");
    prop.store(new FileOutputStream(path), “–test–"); 
    out.close(); 

    2.直接在jsp中操作,通过jsp内置对象获取可操作的绝对地址。
    例:
    // jsp页面
    String path = pageContext.getServletContext().getRealPath("/");
    String realPath = path+"/WEB-INF/classes/abc.properties";

    //java 程序
    InputStream in = getClass().getClassLoader().getResourceAsStream("abc.properties"); // abc.properties放在webroot/WEB-INF/classes/目录下
    prop.load(in);
    in.close();

    OutputStream out = new FileOutputStream(path); // path为通过页面传入的路径
    prop.setProperty("abc", “abcccccc");
    prop.store(out, “–test–");
    out.close();

    3.只通过Java程序操作资源文件
    InputStream in = new FileInputStream("abc.properties"); // 相对路径,项目下的路径

    OutputStream out = new FileOutputStream("abc.properties");

     

    下面的参考解释引用于博客:https://www.cnblogs.com/gaoxing/p/4703412.html

     

    打个简单的比方,你一个WEB程序,发布到Tomcat里面运行。
    首先是执行Tomcat org.apache.catalina.startup.Bootstrap类,这时候的类加载器是ClassLoader.getSystemClassLoader()。
    而我们后面的WEB程序,里面的jar、resources都是由Tomcat内部来加载的,所以你在代码中动态加载jar、资源文件的时候,首先应该是使用Thread.currentThread().getContextClassLoader()。如果你使用Test.class.getClassLoader(),可能会导致和当前线程所运行的类加载器不一致(因为Java天生的多线程)。
    Test.class.getClassLoader()一般用在getResource,因为你想要获取某个资源文件的时候,这个资源文件的位置是相对固定的。

    java的类加载机制(jvm规范)是委托模型,简单的说,如果一个类加载器想要加载一个类,首先它会委托给它的parent去加载,如果它的所有parent都没有成功的加载那么它才会自己亲自来,有点儿像儿子使唤老子的感觉。

     

    如果你使用Test.class.getClassLoader(),可能会导致和当前线程所运行的类加载器不一致 :Class.getClassLoader() returns the class loader for the class. Some implementations may use null to represent the bootstrap class loader. This method will return null in such implementations if this class was loaded by the bootstrap class loader.

    展开全文
  • 需要获取所有类及其方法,以便对权限进行控制。以后开发系统时,可以对角色权限等进行相关操作控制。下面提供一种获取所有类及其方法的方法
  • java获取文件路径的父目录

    万次阅读 2016-11-21 10:32:20
    java获取文件路径的父目录的较好方法如下, 不要用indexOf("\\")或indexOf("/")然后截断的方法。 File file = new File("a.txt"); String parentPath = file.getParent(); // null File parentDir = file....


    java获取文件路径的父目录的较好方法如下,

    不要用indexOf("\\")或indexOf("/")然后截断的方法。

    File file = new File("a.txt");
    String parentPath = file.getParent(); // null
    File parentDir = file.getParentFile(); // null
    System.out.println("parentPath="+parentPath); 
      
    // 获取相对路径
    file = new File("D:/wzy\\a.txt");
    parentPath = file.getParent(); // D:\wzy
    parentDir = file.getParentFile(); // D:\wzy
    System.out.println("parentPath="+parentPath);
    
    parentPath = parentDir.getParent(); // D:\
    parentDir = parentDir.getParentFile(); // D:\
    System.out.println("parentPath="+parentPath);
    
    
    parentPath = parentDir.getParent(); // null
    parentDir = parentDir.getParentFile(); // null
    System.out.println("parentPath="+parentPath);


    展开全文
  • Java实现获取文件信息,可以获得文件所在的路径名,还可以获得文件的大小,
  • package com.company; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in=new Scanner(System.in); System.out.println(System.getPro...
    package com.company;
    
    
    import java.util.Scanner;
    
    public class Main {
    
        public static void main(String[] args) {
            Scanner in=new Scanner(System.in);
            System.out.println(System.getProperty("user.dir"));
        }
    }
    

    展开全文
  • public static void main(String[] args) { String path = System.getProperty("user.dir"); System.out.println(path); } 运行结果: System.getProperty();获取系统变量 /** ...

        public static void main(String[] args) {
             String path = System.getProperty("user.dir");
             System.out.println(path);
        }

    运行结果:


        

    System.getProperty();获取系统变量

         /**
          * Key                                    中文描述
          * java.version                    Java 运行时环境版本
          * java.vendor                        Java 运行时环境供应商
          * java.vendor.url                    Java 供应商的 URL
          * java.home                        Java 安装目录
          * java.vm.specification.version    Java 虚拟机规范版本
          * java.vm.specification.vendor    Java 虚拟机规范供应商
          * java.vm.specification.name        Java 虚拟机规范名称
          * java.vm.version                    Java 虚拟机实现版本
          * java.vm.vendor                    Java 虚拟机实现供应商
          * java.vm.name                    Java 虚拟机实现名称
          * java.specification.version        Java 运行时环境规范版本
          * java.specification.vendor        Java 运行时环境规范供应商
          * java.specification.name            Java 运行时环境规范名称
          * java.class.version                Java 类格式版本号
          * java.class.path                    Java 类路径
          * java.library.path                加载库时搜索的路径列表
          * java.io.tmpdir                    默认的临时文件路径
          * java.compiler                    要使用的 JIT 编译器的名称
          * java.ext.dirs                    一个或多个扩展目录的路径
          * os.name                            操作系统的名称
          * os.arch                            操作系统的架构
          * os.version                        操作系统的版本
          * file.separator                    文件分隔符(在 UNIX 系统中是“/”)
          * path.separator                    路径分隔符(在 UNIX 系统中是“:”)
          * line.separator                    行分隔符(在 UNIX 系统中是“/n”)
          * user.name                        用户的账户名称
          * user.home                        用户的主目录
          * user.dir                        用户的当前工作目录
          * 
          */

    展开全文
  • Java获取资源路径的常用方法

    千次阅读 2019-02-11 14:00:23
    Java中通常使用Class.getResource(String path)方法获取相关文件的URI,但使用的时候一定要注意参数。若以"/"开头,则路径以.class文件的最外层的包路径起始,否则均以.class...
  • Java获取路径方法

    千次阅读 2020-08-23 16:34:27
    CSDN| Java获取路径的方式: https://blog.csdn.net/An1090239782/article/details/82590011 获取项目路径、类加载路径、当前类路径,和在jar包中运行的结果对比 public void printPath() throws IOException { ...
  • java web中File的相对路径与绝对路径总结,用于在运行时获取配置文件、动态加载对象等
  • Java 关于获取webapp路径问题

    万次阅读 2017-09-21 09:28:50
    1.可以在servlet的init方法里 ... 这将获取web项目的全路径 例如 :E:\eclipseM9\workspace\tree\ tree是我web项目的根目录 2.你也可以随时在任意的class里调用 this.getClass().getClassLoader().getResourc
  • Java获取项目路径及classes路径

    千次阅读 2018-08-10 15:23:26
    1.获取项目绝对路径一 String rootPath = request.getSession().getServletContext().getRealPath("/").replace("\\", "/"); 获取内容如下: D:/apacheTomcat/apache-tomcat-7.0.59/webapps/test/ 2.获取web工程名 ...
  • import java.io.*; import java.util.ArrayList; import java.util.List; /** * Created by cy on 2019/7/25. ... // 递归获取目录下的所有文件路径及子目录所有下文件路径 private static Lis...
  • Java JAVA获取相对路径问题的解决

    千次阅读 2019-04-15 11:04:36
    Java JAVA获取相对路径问题的解决
  • Java获取资源文件路径

    千次阅读 2019-10-21 10:26:47
    Java路径  Java中使用的路径,分为两种:绝对路径和相对路径。具体而言,又分为四种:  一、URI形式的绝对资源路径  如:file:/D:/java/eclipse32/workspace/jbpmtest3/bin/aaa.b  URL是URI的特例。URL的前缀/...
  • java文件路径获取

    2012-04-17 14:59:21
    java文件路径获取方法应用总结,非常好
  • java获取class 路径

    千次阅读 2017-11-08 10:07:39
    ClassLoader 提供了两个方法用于从装载的类路径中取得资源:  public URL getResource (String name); public InputStream getResourceAsStream (String name); 这里name是资源的类路径,它是相对与“/...
  • java——获取项目根路径方式

    千次阅读 多人点赞 2020-04-02 19:10:31
    1. this.getClass().get...如果不加“/” 获取当前类的目录 2. file.getCanonicalPath().getPath(); 3. this.getClass().getClassLoader(); 4. System.getProperty("user.dir"); 5. System.getProperty("...
  • java 获取文件夹路径下的所有文件的名称

    万次阅读 多人点赞 2018-07-11 09:20:07
    * 获取某个文件夹下的所有文件 * * @param fileNameList 存放文件名称的list * @param path 文件夹的路径 * @return */ public static void getAllFileName(String path,ArrayList<String> ...
  • Java获取路径的方式

    千次阅读 2018-09-10 15:12:11
    Java环境中,如何获取当前类的路径、如何获取项目根路径等; @Test public void showURL() throws IOException { // 第一种:获取类加载的根路径 File f = new File(this.getClass().getResource("/"...
  • 下面小编就为大家带来一篇浅谈Java工程读取resources中资源文件路径的问题。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • NULL 博文链接:https://wwwzhouhui.iteye.com/blog/504330

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 339,009
精华内容 135,603
关键字:

java获取目录路径

java 订阅