精华内容
下载资源
问答
  • Java相对路径读取文件

    万次阅读 2016-12-16 15:45:44
    * Java相对路径读取文件* 1、在Java开发工具的project中使用相对路径 在project中,相对路径的根目录是project的根文件夹, 创建文件的写法是: ” File f = new File(“src/com/lavasoft/res/a.txt”); ” ...

    Java相对路径读取文件

    1、在Java开发工具的project中使用相对路径_

    在project中,相对路径的根目录是project的根文件夹,
    创建文件的写法是:
    File f = new File("src/com/lavasoft/res/a.txt");
    File f = new File(“./a.txt”);

    如果想在src下创建目录:
    File f = new File(“src/a.txt”);
    注意:
    路径不以“/”开头;

    2、通过CLASSPATH读取包内文件_
    读取包内文件,使用的路径一定是相对的classpath路径,
    比如a.txt,位于包内,此时可以创建读取a的字节流:
    InputStream in = ReadFile.class.getResourceAsStream("/com/lavasoft/res/a.txt");

    注意:
    这里必须以“/”开头;

    *3 由于bin目录(包括web应用中WEB-INF下的classes目录)统称为classpath(类路径) 我们还可以采用下边两种方式来读取。
    *
    1. 通过字节码对象读取
    假如当前类为:Hello.java,它所在的包是:com.mac.util
    在Hello.java中:String f = Hello.class.getResource(“/4.txt”).getPath();这种以“/”开头的是以绝对路径方式读取,意思是从bin目录下开始读取4.txt,
    ” /=D:\eclipse\workspace\test\bin\。

    1. 同理:如果4.txt位于com.mac.util包下,与Hello.class处于同一目录。
      用绝对路径读就是这样:String f = Hello.class.getResource(“/com/mac/util/4.txt”).getPath();
      用相对路径读就是这样:
      String f = Hello.class.getResource(“4.txt”).getPath();

      _3. 通过类加载器读取
      String f = 当前类名.class.getClassLoader().getResource(“4.txt”).getPath();

      注意:通过类加载器读取只能使用相对路径,如果使用绝对路径就读取不到了,比如改成这样:
      String f = 当前类名.class.getClassLoader().getResource(“/4.txt”).getPath();就不行。

    总结
    1. 使用工程相对路径是靠不住的。
    2. 使用CLASSPATH路径是可靠的。
    3. 对于程序要读取的文件,尽可能放到CLASSPATH下,这样就能保证在开发和发布时候均正常读取。

    -

    展开全文
  • package com.wbtask; import java.io.File; import java.net.URL; public class UrlUtil { /** * 取得当前类所在的文件 * @param clazz * @return */ public static File getClassFile(Class cl
    
    
    package com.wbtask;
    
    import java.io.File;
    import java.net.URL;
    
    public class UrlUtil {
        /**
         * 取得当前类所在的文件
         * @param clazz
         * @return
         */
        public static File getClassFile(Class clazz){
            URL path = clazz.getResource(clazz.getName().substring(clazz.getName().lastIndexOf(".")+1)+".classs");
            if(path == null){
                String name = clazz.getName().replaceAll("[.]", "/");
                path = clazz.getResource("/"+name+".class");
            }
            return new File(path.getFile());
        }
        /**
         * 得到当前类的路径 
         * @param clazz
         * @return
         */
        public static String getClassFilePath(Class clazz){
            try{
                return java.net.URLDecoder.decode(getClassFile(clazz).getAbsolutePath(),"UTF-8");
            }catch (Exception e) {
                // TODO: handle exception
                e.printStackTrace();
                return "";
            }
        }
        
        /**
         * 取得当前类所在的ClassPath目录,比如tomcat下的classes路径
         * @param clazz
         * @return
         */
        public static File getClassPathFile(Class clazz){
            File file = getClassFile(clazz);
            for(int i=0,count = clazz.getName().split("[.]").length; i<count; i++)
                file = file.getParentFile();
            if(file.getName().toUpperCase().endsWith(".JAR!")){
                file = file.getParentFile();
            }
            return file;
        }
        /**
         * 取得当前类所在的ClassPath路径
         * @param clazz
         * @return
         */
        public static String getClassPath(Class clazz){
            try{
                return java.net.URLDecoder.decode(getClassPathFile(clazz).getAbsolutePath(),"UTF-8");
            }catch (Exception e) {
                // TODO: handle exception
                e.printStackTrace();
                return "";
            }
        }
        
        public static void main(String[] args){
            System.out.println(getClassFilePath(UrlUtil.class));
            System.out.println(getClassPath(UrlUtil.class));
        }
    }
    
    

    几种不太安全的:

    1. new File(path),这个方法的路径到底在那里取决于调用java命令的起始位置定义在哪里,

      tomcat/bin下面的catalina.bat调用了java,所以在tomcat下相对起始位置是tomcat/bin,但是eclipse启动时,起始位置 是eclipse的项目路径。 

    2.类.class.getClassLoader().getResource("").getPath()

      如果使用了此方法,这把决定权交给了类加载器,例如tomcat的类加载是非委托机制的,而weblogic的类加载是委托的。大部分情况下是安全的。

    3.类.class.getResource("")

      这是个好方法,但局限性在于如果类文件在jar中的话,那么在打jar包时需要将文件夹一起打进去,否则会返回null,jar文件实际上就是zip文件,zip文件中:文件就是文件,文件夹是文件夹,不是关联在一起的,很多开源的jar包就没有把目录打进去只打了classes文件,虽然你能年到目录层次结构,但是调用类.class.getResource("")会返回null.因为文件的目录结构和文件夹本身是两回事。 


    Java中使用的路径,分为两种:绝对路径和相对路径。归根结底,Java本质上只能使用绝对路径来寻找资源。所有的相对路径寻找资源的方法,都不过是一些便利方法。不过是API在底层帮助我们构建了绝对路径,从而找到资源的!
    
      在开发Web方面的应用时, 经常需要获取服务器中当前WebRoot的物理路径。
    
      如果是Servlet , Action , Controller, 或者Filter , Listener , 拦截器等相关类时, 我们只需要获得ServletContext, 然后通过ServletContext.getRealPath("/")来获取当前应用在服务器上的物理地址。
    
      如果在类中取不到ServletContext时,有两种方式可以做到:
    
      1)利用Java的类加载机制:调用 XXX.class.getClassLoader().getResource(""); 方法来获取到ClassPath , 然后处理获得WebRoot目录。
      这种方式只能是该class在WebRoot/WEB-INF/classes下才能生效, 如果该class被打包到一个jar文件中, 则该方法失效。这时就应该用下面一种方式。
    
      2)spring框架的思路,在WEB-INF/web.xml中,创建一个webAppRootKey的param,指定一个值(默认为webapp.root)作为键值,然后通过Listener, 或者Filter,或者Servlet 执行String webAppRootKey = getServletContext().getRealPath("/"); 并将webAppRootKey对应的webapp.root 分别作为Key,Value写到System Properties系统属性中。之后在程序中通过System.getProperty("webapp.root")来获得WebRoot的物理路径。
    
      根据第二种的思路,我们还可以再扩展一下。不过对于在部署在一台服务器中的应用来说,若还不是你所需请再往下看。
    
      下面是一些得到classpath和当前类的绝对路径的一些方法。你可使用其中的一些方法来得到你需要的资源的绝对路径:
    
      1.DebitNoteAction.class.getResource("")
      得到的是当前类FileTest.class文件的URI目录。不包括自己!
      如:file:/D:/eclipse/springTest/WebRoot/WEB-INF/classes/
      atacarnet/src/com/evi/modules/atacarnet/action/
    
      2.DebitNoteAction.class.getResource("/")
      得到的是当前的classpath的绝对URI路径。
      如:file:/D:/eclipse/springTest/WebRoot/WEB-INF/classes/
    
      3.Thread.currentThread().getContextClassLoader().getResource("")
      得到的也是当前ClassPath的绝对URI路径
      如:file:/D:/eclipse/springTest/WebRoot/WEB-INF/classes/
      推荐使用该方法获取。
    
      4.DebitNoteAction.class.getClassLoader().getResource("") 或ClassLoader.getSystemResource("")
      得到的也是当前ClassPath的绝对URI路径。
      如:file:/D:/eclipse/springTest/WebRoot/WEB-INF/classes/
    
      5.取得服务器相对路径
      System.getProperty("user.dir")
      例如:E:\apache-tomcat-5.5.16\apache-tomcat-5.5.16\bin
    
      6.取得项目中的绝对路径
      一般用request.getRealPath("/")或request.getRealPath("/config/")
    
      但现在不提倡使用request.getRealPath("/")了,大家可试用ServletContext.getRealPath("/")方法得到Web应用程序的根目录的绝对路径。
    
      要取得src的文件非常容易,因为src是默认的相对目录,比如你说要取得src下com目录的test.java文件,你只需要这样就够了
      File f = new File(com/test.java);
    
      但如果我要取得不在src目录或者WebRoot目录下的文件呢,而是要从src或者WebRoot同级的目录中取呢,比如说doc吧。
      我的硬方法是这样实现的:
      String path = this.getServletContext().getRealPath("/");
      Properties p = new Properties();
      p.load(new FileInputStream(new File(path.substring(0,(path.lastIndexOf("\\WebRoot") + 1)) + "doc/db.properties")));
      System.out.println(p.getProperty("driverName"));
    -------------------------------
    另:Request中getContextPath、getServletPath、getRequestURI、getRequestURL、getRealPath的区别
    
      假定你的web application 名称为news,你在浏览器中输入请求路径:http://localhost:8080/news/main/list.jsp
    
      则执行下面向行代码后打印出如下结果:
    
    1、 System.out.println(request.getContextPath());
      打印结果:/news
    
    2、System.out.println(request.getServletPath());
      打印结果:/main/list.jsp
    
    3、 System.out.println(request.getRequestURI());
      打印结果:/news/main/list.jsp
    
    4、System.out.println(request.getRequestURL());
      打印结果:http://localhost:8080/news/main/list.jsp
    
    5、 System.out.println(request.getRealPath("/"));
      打印结果:F:\Tomcat 6.0\webapps\news\test





    展开全文
  • java如何通过绝对路径相对路径读取文件

    万次阅读 多人点赞 2018-05-29 19:24:20
    当我在写java的数据库连接时,希望通过使用文件相对路径来读取信息,因为使用绝对路径时在代码移植之后就会出现问题,这不是一个好的方法 0x01 概念 绝对路径:在我们平时使用计算机时要找到需要的文件就必须...

    0x00 前言

    当我在写java的数据库连接时,希望通过使用文件的相对路径来读取信息,因为使用绝对路径时在代码移植之后就会出现问题,这不是一个好的方法

    0x01 概念

    绝对路径:在我们平时使用计算机时要找到需要的文件就必须知道文件的位置,而表示文件的位置的方式就是路径

    相对路径:由这个文件所在的路径引起的跟其它文件(或文件夹)的路径关系

    0x02 java通过绝对路径读取文件

    文件路径:D:\file\logon_initial.properties

    文件内容:

    这里写图片描述

    读取文件的代码:

    import java.io.*;
    import java.sql.*;
    import java.util.*;
        public class DBConnection {
            public static Connection getDBConnection( ) throws Exception {
                Properties prop = new Properties();
                prop.load(new FileInputStream("D:\\file\\logon_initial.properties"));
                String drivers = prop.getProperty("drivers");
                String url = prop.getProperty("url");
                String username = prop.getProperty("username");
                String password= prop.getProperty("password");  
                     Class.forName(drivers);   //加载驱动程序,JDK7以上版本可以不用  
                     Connection conn= DriverManager.getConnection(url,username,password); //连接数据库    
                return conn;
           }  
           public static void Close(Connection conn) throws SQLException{
               conn.close();      
           }
        }
    

    需要注意的是绝对路径还要转义反斜杠

    0x03 java通过src目录读取文件(以src为根目录)

    文件路径: D:\javacode\fileread\src\DB\logon_initial.properties

    这里写图片描述

    代码:

    import java.io.*;
    import java.sql.*;
    import java.util.*;
        public class DBConnection {
            public static Connection getDBConnection( ) throws Exception {
                Properties prop = new Properties();
                prop.load(new FileInputStream("src/DB/logon_initial.properties"));
                String drivers = prop.getProperty("drivers");
                String url = prop.getProperty("url");
                String username = prop.getProperty("username");
                String password= prop.getProperty("password");  
                     Class.forName(drivers);   //加载驱动程序,JDK7以上版本可以不用  
                     Connection conn= DriverManager.getConnection(url,username,password); //连接数据库    
                return conn;
           }  
           public static void Close(Connection conn) throws SQLException{
               conn.close();      
           }
        }
    

    当我们把文件放在Java项目的src\目录下时,可以通过文件的绝对路径来读取,比第一种方法更好一些,注意src前是不需要添加斜杠/的,当然我们也可以把文件放在src目录下,就可以通过读取src/logon_initial.properties来实现

    0x04 java通过CLASSPATH路径来读取包内文件(bin目录)

    通过这个方法可以用文件的相对路径来读取,比前两个方法更加可靠,需要注意的是要将logon_initial.propertiesDBConnection.class处于同一个目录下,只要和当前类的的java源代码同一目录下即可,会自动加载到bin目录下。

    这里写图片描述

    1).绝对路径

    String path = DBConnect.class.getResource(“/DB/logon_initial.properties”).getPath();

    2).通过类加载器来读取

    String path = 当前类名.class.getClassLoader().getResource("logon_initial.properties").getPath();
    

    代码:

    import java.io.*;
    import java.sql.*;
    import java.util.*;
        public class DBConnection {
            public static Connection getDBConnection( ) throws Exception {
                Properties prop = new Properties();
                prop.load(new FileInputStream(DBConnection.class.getResource("logon_initial.properties").getPath()));
                String drivers = prop.getProperty("drivers");
                String url = prop.getProperty("url");
                String username = prop.getProperty("username");
                String password= prop.getProperty("password");  
                     Class.forName(drivers);   //加载驱动程序,JDK7以上版本可以不用  
                     Connection conn= DriverManager.getConnection(url,username,password); //连接数据库    
                return conn;
           }  
           public static void Close(Connection conn) throws SQLException{
               conn.close();      
           }
        }
    

    这样代码移植之后依然能够读取到文件,方便了很多。

    切记是把要读取的文件放在和当前类的java源代码处于同一个包内(src下的目录下)

    这里写图片描述

    到此就OK了

    展开全文
  • Java文件相对路径与绝对路径

    万次阅读 多人点赞 2015-09-14 18:47:46
    通过这篇博客可以深入理解Java相对路径与绝对路径的概念,同时对Eclipse和tomcat中的相对路径也做介绍,有助于开发。另外,getPath()、getAbsolutePath()、getCanonicalPath()的区别也做了说明。

    一、Linux和Windows路径分隔符

    Linux下:”/”

    Window下:”\\”

    Java中通用:System.getProperty(“file.separator”);

    二、相对路径


    2.1 相对路径的概念

    相对路径指的是相对JVM的启动路径。

    举个例子:假设有一java源文件Example.java在d盘根目录下。我们进入命令行窗口,进入到d盘根目录下,然后用“javac Example.java”来编译此文件,编译无错后,会在d盘根目录下自动生成”Example.class”文件。我们再调用”java Example”来运行该程。此时我们已经启动了一个jvm,这个jvm是在d盘根目录下被启动的,所以此jvm所加载的程序中File类的相对路径也就是相对这个路径的,即d盘根目录D:\。

    搞清了这些,我们可以使用相对路径来创建文件,例如:

    File file = new File(“a.tx”);

    file.createNewFile();

    假设jvm是在”D:\”下启动的,那么a.txt就会生成在D:\a.txt;

    2.2 如何通过文件路径创建文件对象

    下面的ResourceTest项目中有4个文件,1.properties、2.properties、3.properties、4.properties。

    当我们需要使用这4个文件的时候,怎样创建文件对象呢?


    编译后,4个文件的路径如下:

    ResourceTest/1.properties                     
    ResourceTest/bin\2.properties                 
    ResourceTest/bin\com\ghs\test\3.properties    
    ResourceTest/bin\com\ghs\test\sub\4.properties

    前面我们说过,JAVA中文件路径是相对JVM的启动路径的,对于简单的JAVA项目,其JVM是在项目名称下启动的,所以,ResourceTest中4个文件的相对路径分别是:

    ./1.properties   或者1.properties                  
    ./bin\2.properties  或者  bin\2.properties               
    ./bin\com\ghs\test\3.properties   或者bin\com\ghs\test\3.properties 
    ./bin\com\ghs\test\sub\4.properties  或者 bin\com\ghs\test\sub\4.properties

    附:“.”或”.\”代表当前目录,这个目录也就是jvm启动路径。

    public class MainTest {
    
    	public static void main(String[] args) {
    		
    		File file1 = new File("./1.properties");
    		//File file1 = new File("test1.txt");
    		
    		File file2 = new File("./bin/2.properties");
    		//File file2 = new File("bin/2.properties");
    		
    		File file3 = new File("./bin/com/ghs/test/3.properties");
    		//File file3 = new File("bin/com/ghs/test/3.properties");
    
    		File file4 = new File("./bin/com/ghs/test/sub/4.properties");
    		//File file4 = new File("bin/com/ghs/test/sub/4.properties");
    		
    		try {
    			System.out.println(file1.exists()+":"+file1.getCanonicalPath());
    			System.out.println(file2.exists()+":"+file2.getCanonicalPath());
    			System.out.println(file3.exists()+":"+file3.getCanonicalPath());
    			System.out.println(file4.exists()+":"+file4.getCanonicalPath());
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
    	}
    }

    程序运行结果如下:

    true:D:\me\open\open-project\ResourceTest\1.properties
    true:D:\me\open\open-project\ResourceTest\bin\2.properties
    true:D:\me\open\open-project\ResourceTest\bin\com\ghs\test\3.properties
    true:D:\me\open\open-project\ResourceTest\bin\com\ghs\test\sub\4.properties


    上面创建文件的方式太过于繁琐,所以一般情况下,对于test2.txt和text3.txt的获取,我们倾向于采取下面的方法:

    File file2 = new File(Test.class.getResource("/test2.txt").toURI());

    File file2 = new File(Test.class.getResource("test3.txt").toURI());


    Tomcat中的情况,如果在tomcat中运行web应用,此时,如果我们在某个类中使用如下代码:

    File f = new File(".");

    String absolutePath = f.getAbsolutePath();

    System.out.println(absolutePath);

    那么输出的将是tomcat下的bin目录.我的机器就D:\work\server\jakarta-tomcat-5.0.28\bin\.,由此可以看出tomcat服务器是在bin目录下启动jvm的,其实是在bin目录下的“catalina.bat”文件中启动jvm的。

    2.3 当前目录和上级目录

    “.”或”.\”代表当前目录,这个目录也就是jvm启动路径。

    下面的代码能得到当前完整目录:

    File f = new File(".");

    String absolutePath = f.getAbsolutePath();

    System.out.println(absolutePath);//D:\

    在当前目录下建立文件:File f = new File(“.\\test1.txt”);

     

    “..”代表当前目录的上级目录。

    在上级目录建立文件:File f = new File(“..\\..\\test1.txt”);

     

    三、getPath()、getAbsolutePath()、getCanonicalPath()的区别

    getPath()获取的是新建文件时的路径,例如:

    File file1 = new File(".\\test1.txt");通过getPath()获取的是.\\test1.txt

    File file = new File("D:\\Text.txt");通过getPath()获取的是D:\\Text.txt

     

    getAbsolutePath()获取的是文件的绝对路径,返回当前目录的路径+构造file时候的路径,例如:

    File file1 = new File(".\\test1.txt");通过getAbsolutePath()获取的是D:\workspace\test\.\test1.txt

     

    getCanonicalPath()获取的也是文件的绝对路径,而且把..或者.这样的符号解析出来,例如:File file = new File("..\\src

    \\test1.txt");通过getCanonicalPath()获取的是D:\workspace\src\test1.txt

    四、获取上级目录

    getParent()或者getParentFile();

    五、获取资源的路径

    Java中取资源时,经常用到Class.getResource()和ClassLoader.getResource(),这里来看看他们在取资源文件时候的路径问题。

    1.Class.getResource(String path)

    path  不以’/'开头时,默认是从此类所在的包下取资源;path  以’/'开头时,则是从ClassPath根下获取;

    什么意思呢?看下面这段代码的输出结果就明白了:

    package testpackage;
    public class TestMain{
        public static void main(String[] args) {
            System.out.println(TestMain.class.getResource(""));
            System.out.println(TestMain.class.getResource("/"));
        }
    } 

    输出结果:

    file:/E:/workspace/Test/bin/testpackage/

    file:/E:/workspace/Test/bin/

    上面说到的【path以’/'开头时,则是从ClassPath根下获取】,在这里就是相当于bin目录(Eclipse环境下)。

     

    如果我们想在TestMain.java中分别取到1~3.properties文件,该怎么写路径呢?代码如下:

    package testpackage;
     
    public class TestMain{
        public static void main(String[] args) {
            // 当前类(class)所在的包目录
            System.out.println(TestMain.class.getResource(""));
            // class根目录
            System.out.println(TestMain.class.getResource("/"));
            
            // TestMain.class在<bin>/testpackage包中
            // 2.properties  在<bin>/testpackage包中
            System.out.println(TestMain.class.getResource("2.properties"));
            
            // TestMain.class在<bin>/testpackage包中
            // 3.properties  在<bin>/testpackage.subpackage包中
            System.out.println(TestMain.class.getResource("subpackage/3.properties"));
            
            // TestMain.class在<bin>/testpackage包中
            // 1.properties  在bin目录(class根目录)
            System.out.println(TestMain.class.getResource("/1.properties"));
        }
    }
    
    ※Class.getResource和Class.getResourceAsStream在使用时,路径选择上是一样的。


    2.Class.getClassLoader().getResource(String path)

    path不能以’/'开头时;

    path是从ClassPath根下获取;

     

    Class.getClassLoader().getResource(String path)

    package testpackage;
    public class TestMain{
        public static void main(String[] args) {
            TestMain t= new TestMain();
            System.out.println(t.getClass());
            System.out.println(t.getClass().getClassLoader());
            System.out.println(t.getClass().getClassLoader().getResource(""));
            System.out.println(t.getClass().getClassLoader().getResource("/"));//null
        }
    }
    


    输出结果:

    class testpackage.TestMainsun.misc.Launcher$AppClassLoader@1fb8ee3file:/E:/workspace/Test/bin/

    null

    从结果来看【TestMain.class.getResource("/") == t.getClass().getClassLoader().getResource("")】

    上面同样的目录结构,使用Class.getClassLoader().getResource(String path)可以这么写:

    package testpackage;
    public class TestMain{
        public static void main(String[] args) {
            TestMain t= new TestMain();
            System.out.println(t.getClass().getClassLoader().getResource(""));
            
            System.out.println(t.getClass().getClassLoader().getResource("1.properties"));
            System.out.println(t.getClass().getClassLoader().getResource("testpackage/2.properties"));
            System.out.println(t.getClass().getClassLoader().getResource("testpackage/subpackage/3.properties"));
        }
    }

    ※Class.getClassLoader().getResource和Class.getClassLoader().getResourceAsStream在使用时,路径选择上也是一样的。
    展开全文
  • Java相对路径访问文件

    千次阅读 2019-04-05 16:36:26
  • 获取JAVA文件路径

    万次阅读 2013-09-12 13:41:07
    由于经常需要获取文件路径,但是比较容易忘记,每次需要总需要查询,现在把这些方式写下来,方便自己的时候也方便大家了,如果大家在下面的方法遇到什么问题,可以留言。 一.Java文件获取路径方式: 各种获取方式...
  • Java FileReader使用相对路径读取文件

    万次阅读 2018-11-15 14:47:28
    Java FileReader使用相对路径读取文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 在进行编程时需要时常更换主机进行测试,...需要读取的文件路径为 项目根目录\experiment\1.txt 解决方案 使用System.getProp...
  • java相对路径的书写

    万次阅读 2019-04-30 21:54:56
    这里写自定义目录标题第一部分:/ 和 .功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定...在java开发过程中,经常需要...
  • java相对路径与绝对路径

    千次阅读 2015-11-26 22:43:21
    绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如: C:xyz est.txt 代表了test.txt文件的绝对路径。http://www.sun.com/index.htm也代表了一个URL绝对路径相对路径:...
  • java相对路径设置

    万次阅读 2011-03-01 20:18:00
    java相对路径的设置是一个比较头痛的问题:配置文件应该写在哪里,"/","./"等各自代表着什么含义,普通的java工程和jsp(servlet)的路径什么不同,这都是我们特别需要留意的。不然在程序开发中会死得很惨...
  • java 使用相对路径读取文件1.java project环境,使用java.io用相对路径读取文件的例子: *目录结构: DecisionTree |___src |___com.decisiontree.SamplesReader.java |___resource
  • Java文件类中的构造器经常会处出现一些什么抽象路径和绝对路径,下面就来解释一下什么是绝对路径什么是相对路径以及什么是抽象路径。  绝对路径 绝对路径就是文件在系统中的客观位置,举例说明我的“D:\QQ\...
  • Java文件路径/服务器路径的获取

    千次阅读 2017-08-08 19:19:23
    Java文件路径获取 几种获取方式 getResourceAsStream ()返回的是inputstream getResource()返回:URL Class.getResource("") 返回的是当前Class这个类所在包开始的为置 Class.getResource("/") 返回的是...
  • 问大家一个问题,列如我在前端可以通过htpps://10.62.192.31943/eam/icons/domain/domain-12.jpg这个url来访问获取这张图片,但是这个...不是后台的真实路径,请问我怎么通过这个获取文件流,之前试过用url那种方式不行
  • Java FileReader相对路径

    千次阅读 2018-03-13 22:41:58
    实验一快要到DDL了,今天在用Javac和Java命令手动执行实验一的代码的时候发现一个问题,当时在IDEA中运行正常的代码,在javac编译手动用java执行的时候发现并不能通过,出问题的代码是一段(试图)使用相对路径来写...
  • java 相对路径问题

    2017-09-06 15:18:24
    今天在改写solr的时候想本地调试,解决发现有一段使用相对路径的代码不能获得这个文件,报IOException。 检查了一下文件,的确在那个目录,user.dir也已经指定到那个目录了。可以通过new File("./")....
  • java文件路径

    千次阅读 2018-10-06 12:44:38
    与“相对路径”比较:能够通过“set classpath=路径 ” 这方式指定类文件路径,这样在不同盘符下执行java文件就不会报错 注意事项:classpath路径中"/"是指在src文件路径(src),并非值项目路径 public ...
  • java 获取文件相对路径

    万次阅读 2019-05-06 19:10:28
    1、首先需要在maven工程下的resources文件夹下添加文件 2、通过右边代码获取路径String fileName = dataPreProcess.class.getClassLoader().getResource("char_to_id.txt").getPath(); ...
  • java判断路径是文件夹还是文件

    千次阅读 2019-09-24 09:52:54
    当给定一个路径没有后缀的时候,很难分辨代码是文件还是文件夹,如下图: 我在桌面建立了一个名为one的文件路径为:/Users/XXXXXX/Desktop/one java代码如下: import java.io.File; public class Flie_or...
  • 什么是路径: ...什么是相对路径: ·从当前文件出发到目标文件所经过的路径叫做相对路径。 ·书写格式不以 “/” 开头 ·退至上一级目录以 "../" 开头 什么是绝对路径: ·以 “/” 开头的路径都是
  • java文件路径

    万次阅读 2006-06-20 19:05:00
    所以这里简单也谈一下这两者的文件路径设置。首先说可以用下面的方法查看当前的目录,你的文件路径就可以以此为据:System.out.println(System.getProperty("user.dir"));如果你用这个方法来杳看你JSP页面,可以发现...
  • 关于Java文件路径在Windows和Linux中的问题~
  • Java文件路径问题

    千次阅读 2018-11-14 23:58:00
    项目部署到生产环境(CentOS 7)后在运行过程中多了一些不明文件目录,如下图:  项目中有相关的下载功能,所以需要在服务器端创建目录,但很明显创建失败了,不难发现图中的路径分隔是和windows操作系统一致的...
  • java相对路径总结

    千次阅读 2009-01-05 12:33:07
    绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如: C:xyz est.txt 代表了test.txt文件的绝对路径。http://www.sun.com/index.htm也代表了一个URL绝对路径相对路径:...
  • Java 文件路径的读取

    千次阅读 热门讨论 2014-08-10 00:42:46
    文件读取有两种方式,当然这在各编程语言中也是通用的,所以java路径也分,相对 和绝对路径。 绝对路径 绝对路径URI ,听着和URL很相似,那我们就来看看吧。 URI(Uniformresource Identifier)统一资源标示符.URL统一资源...
  • // 打包jar同目录下的application.properties,未打包 bin/application.properties File file = new File(path + "application.properties"); Properties properties = new ...Java 读写Properties配置文件
  • java相对路径转换为绝对路径

    千次阅读 2015-03-12 11:43:22
    Java获取当前路径 1、利用System.getProperty()函数获取当前路径: System.out.println(System.getProperty("user.dir"));//user.dir指定了当前的路径 2、使用File提供的函数获取当前路径: File directory = new ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,183,095
精华内容 473,238
关键字:

java相对路径是什么

java 订阅