你真的了解Java I/O的绝对路径和相对路径吗?
今天和大家聊一聊绝对路径和相对路径:
所谓的绝对路径:通俗一点讲 ,他是一个完整的路径,他是以盘符(比如电脑里面的c盘,d盘)开始的路径:
c:a.txt
C:UsersitcastIdeaProjectsshungyuan123.txt
D:demo.txt
像上面这些路径都是绝对路径。
而相对路径 :
它是一个简化的路径相对指的是相对于当前项目的根(C:UsersitcastIdeaProjectsshungyuan)如果使用当前项目的根目录,路径可以简化书写C:UsersitcastIdeaProjectsshungyuan123.txt-->简化为: 123.txt(可以省略项目的根目录)请注意:
路径是不区分大小写 路径中的文件名称分隔符windows使用反斜杠,反斜杠是转义字符,两个反斜杠代表一个普通的反斜杠
接下来说一说java.io.File类
File(String pathname) 通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。
参数:
String pathname:字符串的路径名称 路径可以是以文件结尾,也可以是以文件夹结尾 路径可以是相对路径,也可以是绝对路径 路径可以是存在,也可以是不存在 创建File对象,只是把字符串路径封装为File对象,不考虑路径的真假情况举个小例子:
File(File parent, String child) 根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。
参数:把路径分成了两部分
File parent:父路径 String child:子路径好处:
父路径和子路径,可以单独书写,使用起来非常灵活;父路径和子路径都可以变化 父路径是File类型,可以使用File的方法对路径进行一些操作,再使用路径创建对象
File类获取功能的方法
- public String getAbsolutePath() :返回此File的绝对路径名字符串。 - public String getPath() :将此File转换为路径名字符串。 - public String getName() :返回由此File表示的文件或目录的名称。 - public long length() :返回由此File表示的文件的长度。public String getAbsolutePath() :返回此File的绝对路径名字符串。获取的构造方法中传递的路径,无论路径是绝对的还是相对的,getAbsolutePath方法返回的都是绝对路径
public String getPath() :将此File转换为路径名字符串。
获取的构造方法中传递的路径
toString方法调用的就是getPath方法
源码:
public String toString() {
return getPath();
}