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

/**
 *mkdir:只能用来创建文件夹,且只能创建一级目录,如果上级不存在,就会创建失败。
 mkdirs:只能用来创建文件夹,且能创建多级目录 ,如果上级不存在,就会自动创建。(创建文件夹多用此)
 createNewFile:只能用来创建文件,且只能在已存在的目录下创建文件,否则会创建失败。
 (FileOutputStream os=new FileOutputStream(file)也可创建文件,看情况使用)
 */

getParentFile()的作用是获得父目录
         问题就是.mkdirs(); 这个方法只能生成一层一层的文件夹,不能生成文件,而你的file对象路径是直接到文件那一层的,
     不用getParentFile()获得父目录的话,就会想你说的那样生成两个文件夹而不是你想要的文件,所以要先调用getParentFile()获得父目录,
     用.mkdirs()生成父目录文件夹,最后把你想要的文件生成到这个文件夹下面,就是想要的结果

public class FileTest {public static void main(String[] args) {try {File file = new File("E:\\test\\test.txt");if(!file.getParentFile().exists()){file.getParentFile().mkdirs();}if(!file.exists()){file.createNewFile();}} catch (IOException e) {// TODOe.printStackTrace();}}
}

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



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

    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的内容

 

项目名是 S

  

点开bin文件夹

注意这个fd.properties文件

发现:

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


后面有2个ok

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

    /*

    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")效果)

file创建文件和文件夹路径相关推荐

  1. Java17-day08【File(创建和删除文件、判断和获取功能、遍历目录)、IO流(字节流写数据、异常处理、字节流读数据、复制文本文件、复制图片)】

    视频+资料(工程源码.笔记)[链接:https://pan.baidu.com/s/1MdFNUADVSFf-lVw3SJRvtg   提取码:zjxs] Java基础--学习笔记(零起点打开java ...

  2. android file 创建时间,获得文件的创建时间(精确到时分秒)

    最近的项目中遇到一个需求,要求判断文件是否被修改.这下犯了难.一开始打算使用file.lastModified(),后来才意识到这个只能获取最后修改时间,无法获取文件的创建时间.后来,参考论坛中大神( ...

  3. java file 操作之创建、删除文件及文件夹

    本文章向大家讲解java文件的基本操作,包括java创建文件和文件夹.java删除文件.java获取指定目录的全部文件.java判断指定路径是否为目录以及java搜索指定目录的全部内容等.请看下面实例 ...

  4. JAVA之旅(二十八)——File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤...

    JAVA之旅(二十八)--File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤 我们可以继续了,今天说下File 一.File概述 文件的操作是非常 ...

  5. 创建文件夹 java_java文件操作 之 创建文件夹路径和新文件

    一:问题 (1)java 的如果文件夹路径不存在,先创建: (2)如果文件名 的文件不存在,先创建再读写;存在的话直接追加写,关键字true表示追加 (3)File myPath = new File ...

  6. JAVA 如何使用File类创建文件,文件夹

    一: 包 import java.io.File; import java.io.IOException; 二:File文件类的实例化 File f1 = new File("D:/我的文件 ...

  7. JAVA之旅(二十八)——File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤

    JAVA之旅(二十八)--File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤 我们可以继续了,今天说下File 一.File概述 文件的操作是非常 ...

  8. Android中文件与文件夹的创建(file)

    1.关于文件夹的创建 //新建一个File,传入文件夹目录 File file = new File("/mnt/sdcard/work/mywork"); //判断文件夹是否存在 ...

  9. Qt判断文件夹路径、文件是否存在不存在则创建

    Qt判断文件夹/目录是否存在 Qt判断文件夹/目录是否存在,可以使用QDir类的exists方法来判断,在使用时需要包含头文件#include <QDir>,例如下面的代码: #inclu ...

  10. java判断指定路径文件夹是否存在,若不存在则创建新的文件夹,存在则删除

    isFile():判断是否 是文件,也许可能是文件或者目录 exists():判断是否存在,可能不存在 两个不一样的概念 isDirectory()是检查一个对象是否是文件夹.返回值是boolean类 ...

最新文章

  1. Hibernate缓存原理与策略 Hibernate缓存原理:
  2. Ajax框架及原理分析--视频
  3. 数据“土豪”电信云告诉你,如何“玩转”数据生态
  4. 1001 A+B Format (20分)——12行代码AC
  5. 职坐标c语言,C/C++知识点之hexdump的C语言实现
  6. Spring MVC前端控制器不拦截静态资源配置
  7. 统计学习方法 第八章总结
  8. Flutter实战:手把手教你写Flutter Plugin
  9. web第三课html课堂笔记
  10. 百度地图SDK for Android【Demo调起百度地图客户端导航功能】
  11. 使用无线网桥安装电梯监控图解
  12. 高德地图(第二篇)测量距离小工具
  13. 如何选择合适的无线网桥
  14. ensp报错AR40,无法修改IP地址解决办法。
  15. c 语言写数独游戏,经典数独游戏+数独求解器—纯C语言实现
  16. 显示unc路径服务器根目录,路径解释:绝对、相对、UNC 和 URL
  17. php汉字验证码,PHP中实现中文汉字验证码 源代码
  18. ESP32实验03:0.96tft液晶显示屏驱动
  19. 小型双轮差速底盘三灰度循迹功能的实现
  20. HTML转换成PDF 指定网页转换PDF(实际上是截取网页) pdf.js , dompdf , html2ps , wkhtmltopdf

热门文章

  1. PCL代码运行中遇到的错误以及解决
  2. tar 解压 跳过第一级目录
  3. 功能性需求与非功能性需求
  4. PowerPoint 演示快捷键大全
  5. 递归特征消除和K折交叉验证(以决策树回归为例)
  6. 《商业银行设立基金管理公司试点管理办法》
  7. beatmaker3 android,Beat Maker Go节拍制作器
  8. 要成为一名合格的团队管理者你需要看这十本团队管理书籍
  9. (OK) 图解几个与Linux网络虚拟化相关的虚拟网卡-VETH/MACVLAN/MACVTAP/IPVLAN
  10. [渝粤教育] 西南科技大学 复习资料 法理学(1)