java new file 路径_File file = new File("路径名") 路径名的2种写法

项目的结构:相同颜色是同级的

88a62acb62d2081050da2ee7afb09149.png

0af8df829a30df675d1c60ba6f78170a.png

7bcc5e37a2b980f26e0ac9c664e34af2.png

bean的配置文件的读取和一般文件的读取有点差别的

07e771f0646271db6040884bae3fd6be.png

public static void getValue(String key){ //传入"time"

Properties prop = new Properties();

Properties prop2 = new Properties();

Properties prop3 = new Properties();

//要么是全路径

File file = new File("D:\\java\\content\\eclipse-win64\\S\\java\\fd.properties");

//要么是去在全路径基础上去掉项目名

File file2 = new File("java\\fd.properties");

File file3 = new File("fd2.properties");

try {

//装载配置文件

prop.load(new FileInputStream(file));

prop2.load(new FileInputStream(file2));

prop3.load(new FileInputStream(file3));

} catch (IOException e) {

e.printStackTrace();

}

//返回获取的值

System.out.println(prop.getProperty(key)

+ prop2.getProperty(key)+prop3.getProperty(key));

}8 8 9

fd.properties的内容

4d3a2cb5b2f6a0f8083a5a2005091f09.png

2a7dd0568220559f84436cfa37e58ab3.png

项目名是 S

419a5ffc3ecbdade86155eabbf75a9a2.png  

fff7f2a1ff9ddc320743171e650f642a.png

点开bin文件夹

638d68f2c841fafeae6793f80bc78fdf.png

注意这个fd.properties文件

发现:

只有在src或者java文件夹下的java文件或资源文件才会编译,然后通过打包,会复制到commlib中

后面有2个ok

/*

1.绝对路径

a.带盘符,如E:/book.xml

b.以http开头,http://img.baidu.com/img/book.jpg

2.相对路径

a.带"/"开头,如/book.xml

b.不带"/"开头,如book.xml

现在项目结构如下,在ParseXML类中操作,我实验项目System.getProperty("user.dir")=E:\ProjectTest\javaEE\

绝对路径:

new

File("E:/ProjectTest/javaEE/src/com/ly/javaee/xml/dom4j/book.xml")---OK

相对路径

new

File("book.xml")----报错(此时相当于System.getProperty("user.dir")+"book.xml",这是文件book.xml不存在user.dir下面)

new File("src/com/ly/javaee/xml/dom4j/book.xml")----OK(不带"/"

可见在项目中相对的是以项目名为根路径,此时相当于System.getProperty("user.dir")+"src/com/ly/javaee/xml/dom4j/book.xml")

new File("/book.xml")----以下可以看出本JVM运行在E盘下,此时带"/"就相当于"E:/book.xml",JVM运行在哪个盘符就以哪个为根路径

new

File("./book.xml");---报错(同new File("book.xml")效果)

随机推荐

Excel筛选之后如何下拉递增

1.痛点 Excel表格,通过筛选了之后,再想统计行数,通过单纯的拖动或者填充排序啥的,都无法做到排序或行数递增: 2.解决方案 发现了个excel的公式可以完美解决该问题,赞个,找的好辛苦. 3.大 ...

ubuntu下安装JDK并搭建activeMQ

1.安装JDK,网上有人说activeMQ支持持JDK1.7及以上版本,未实际测试,保险起见我这里直接安装JDK1.7. #apt-get install openjdk--jdk 2.设置环境变量 ...

细说new与malloc的10点区别

前言 几个星期前去面试C++研发的实习岗位,面试官问了个问题: new与malloc有什么区别? 这是个老生常谈的问题.当时我回答new从自由存储区上分配内存,malloc从堆上分配内存:new/de ...

RESULT:0x80029C4A (TYPE_E_CANTLOADLIBRARY))

无法将类型为"Microsoft.Office.Interop.Excel.ApplicationClass"的 COM 对象强制转换为接口类型"Microsoft.Of ...

LLVM

http://blog.csdn.net/snsn1984/article/details/41077763

svn Error: post-commit hook failed (exit code 127) with output

Command: Commit Modified: C:\Users\xsdff\Desktop\project\index.html Sending content: C:\Users\xsdff\ ...

phonegap archive 报错 Cordova/CDVViewController.h' file not found

在BuildSettings->Header Search Paths  增加如下路径,问题解决 $(OBJROOT)/UninstalledProducts/include "$(O ...

由链表初始化看C语言的二级指针

先来看C语言创建链表.插入节点和遍历链表的一段代码: #include #include typedef int ElemType; ...

java对象引用传递和值传递的一些总结

1.对象作为函数的参数传递过去的时候,是以原对象的引用的方式传递的,更改参数对象的值,会影响原来的对象. 2.对象作为函数的返回值的时候,传递过来的也是一个引用传递,更改传递过来的对象的时候,会影响原 ...

C++利用不完全实例化来获得函数模板参数的返回值和参数

有一些模板会以函数为模板参数,有时候这些模板要获得函数的返回值和参数.如在boost中的signal和slot机制,就存在这样情况. 那么,我们如何得到这些信息呢? 我们使用C++不完全实例化来实现. ...


版权声明:本文为weixin_35705523原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。