长沙网站推广平台,宁波网易企业邮箱,网站优化基本技巧,建筑网下载路径分为绝对路径和相对路径。
相对路径肯定是相对谁来说的#xff0c;一般是一个文件相对于另外一个文件而言的路径。
下面是一个例子#xff0c;比如index.htm如何找到photo.jpg呢#xff1f;
c:/website/web/index.htmc:/website/img/photo.jpg
所以在index.htm中使用…路径分为绝对路径和相对路径。
相对路径肯定是相对谁来说的一般是一个文件相对于另外一个文件而言的路径。
下面是一个例子比如index.htm如何找到photo.jpg呢
c:/website/web/index.htmc:/website/img/photo.jpg
所以在index.htm中使用绝对路径的话就是../img/photo.jpg。
./表示当前文件所在的目录。也可以省略不写。
../表示当前文件所在目录的父目录就是上一级目录在c:/website/web/index.htm中就是c:/website再和相对路径进行拼接就是绝对路径了。
在下面这个代码中aaa其实是./aaa也就是File1所在的目录按说应该是D:\JavaWorkspace\File\src\com\liu但是在IDEA中却不是这样是相对于模块来说的即./所表示的是D:\JavaWorkspace\File。 public class File1 {public static void main(String[] args) throws IOException {File file new File(aaa);file.mkdirs();
}
IDEA目录结构从高到低Project项目→Module模块→Package包→Java文件 IDEA默认当前路径为Project的路径。
IDEA中的项目和模块的可以参考下面这张图 关于IDEA中写相对路径时报错系统找不到指定的路径_idea中相对路径找不到文件-CSDN博客
将字符串转换为其他类的对象比如File类还有常用的时间类。
如何转换有3个构造方法。
3个构造方法的参数分别是(路径)、(父级路径,子级路径)、(父级路径的File对象,子级路径)。
细节在创建的时候是不关心路径存不存在的。
以及常用方法
1获取与File对象有关的有一些信息。
所表示的路径是否存在exist。所表示的路径是文件夹还是文件如果所表示的路径根本不存在则直接返回false。本来想查看源码验证一下但是看不懂算了。
length()文件的字节大小不能获取文件夹的大小。
getAbsolutePath获取绝对路径。
getPath返回定义时的路径。
getName要时刻注意当前File对象所表示的路径是文件还是文件夹。如果是文件夹则返回文件夹的名字如果是文件则返回文件名后缀名如a.txt。
2对文件或文件夹进行操作增删查
关于createNewFile()方法它表示创建一个空的文件但是却没有参数那文件的名字如何确定呢是默认提供的吗好像也不是。
具体步骤应该是这样的即当前File对象所表示的路径是否是文件
在此方法中一般都会把文件夹看作文件比如\bbb会看作一个没有后缀的bbb文件而不是文件夹谁说文件一定要有后缀名呢。所以createNewFile()方法只能创建一个文件不能创建文件夹。
当前File对象所表示的路径是否存在如果不存在就创建一个存在则不创建并返回false。
如果当前路径的父级路径并不存在运行时会报IOException异常。
mkdir()创建文件夹。
有一个问题Windows操作系统中路径是唯一的。比如一个文件夹下有一个文件为bbb此时想创建一个bbb的文件夹是不会成功的因为它们两个的路径都是\bbb这在Windows中是不被允许的。因此这个问题也就延伸到了Java中。
而且mkdir()这个方法只能创建单级文件夹不能创建多级文件夹比如想在已有的aaa文件夹下创建还没存在的ccc\ddd就是错的。
但是Java中肯定也提供了相应的方法比如mkdirs()就可以创建多级文件夹。但是mkdirs()也是可以创建单级文件夹的那mkdir()这个方法岂不是没有存在的必要了答案是的那为什么还有学呢因为mkdirs()这个方法的底层其实用到了mkdir()。
还有一个删除的方法delete首先分删除的是文件还是文件夹如果是文件不管空不空直接删如果是文件夹则需要考虑文件夹下是否有内容是空文件夹则删除成功有内容的文件夹此方法删不了。
并且此方法删除的东西是不经过电脑的回收站的。
遍历文件夹listFiles()返回结果是一个数组数组中的内容是路径。
Array.toString()方法将数组以字符串的形式进行输出。这个方法的底层跟之前写的一模一样。