Java相对路径读取文件

来源:互联网 发布:政府大数据应用 编辑:程序博客网 时间:2024/05/16 08:28
Posts - 15  Articles - 0  Comments - 0

Java相对路径读取文件

获取CLASSPATH下文件的绝对路径

  当使用相对路径写入文件时候,就需要用到绝对路径。下面是个例子:

  package com.lavasoft;

  import java.io.File;

  /**

  * CLASSPATH文件的绝对路径获取测试

  *

  */

  public class Test {

  //classpath的文件路径

  private static String cp = "/com/lavasoft/cfg/syscfg.properties";

  public static void main(String[] args) {

  //当前类的绝对路径

  System.out.println(Test.class.getResource("/").getFile());

  //指定CLASSPATH文件的绝对路径

  System.out.println(Test.class.getResource(cp).getFile());

  //指定CLASSPATH文件的绝对路径

  File f = new File(Test.class.getResource(cp).getFile());

  System.out.println(f.getPath());

  }

  }

  输出:

  /D:/projects/bbt/code/cdn/planrpt/out/production/planrpt/

  /D:/projects/bbt/code/cdn/planrpt/out/production/planrpt/com/lavasoft/cfg/syscfg.properties

  D:\projects\bbt\code\cdn\planrpt\out\production\planrpt\com\lavasoft\cfg\syscfg.properties

  Process finished with exit code 0

  总结

  使用工程相对路径是靠不住的。

  使用CLASSPATH路径是可靠的。

  对于程序要读取的文件,尽可能放到CLASSPATH下,这样就能保证在开发和发布时候均正常读取。

原创粉丝点击