package cn.itcast.file;java
import java.io.File;linux
/*
IO流(Input Output) :windows
IO技术主要的做用是解决设备与设备之间 的数据传输问题。 好比: 硬盘--->内存 内存的数据---->硬盘上 把键盘的数据------->内存中xml
IO技术的应用场景:
导出报表 , 上传大头照 、 下载 、 解释xml文件 ... 内存
数据保存到硬盘上,该数据就能够作到永久性的保存。 数据通常是以文件的形式保存到硬盘上资源
sun使用了一个File类描述了文件或者文件夹的。字符串
File类能够描述一个文件或者一个文件夹。get
File类的构造方法:it
File(String pathname) 指定文件或者文件夹的路径建立一个File文件。
File(File parent, String child) 根据 parent 抽象路径名和 child 路径名字符串建立一个新 File 实例。 io
File(String parent, String child)
目录分隔符: 在windows机器上 的目录分隔符是 \ ,在linux机器上的目录分隔符是/ .
注意: 在windows上面\ 与 / 均可以使用做为目录分隔符。 并且,若是写/ 的时候只须要写一个便可。
*/
public class Demo1 {
public static void main(String[] args) {
//File file = new File("F:"+File.separator+"a.txt"); // 在linux机器上是否是一个合法路径???
File file = new File("F:/a.txt");
/*File parentFile = new File("F:\\");
File file = new File("F:\\","a.txt");*/
System.out.println("存在吗? "+ file.exists()); // exists 判断该文件是否存在,存在返回true,不然返回false。
// System.out.println("目录分隔符:"+ File.separator);
}
}
绝对路径: 该文件在硬盘上 的完整路径。绝对路径通常都是以盘符开头的。
相对路径: 相对路径就是资源文件相对于当前程序所在的路径。
. 当前路径
.. 上一级路径
注意: 若是程序当前所在的路径与资源文件不是在同一个盘下面,是无法写相对路径 的。
*/
public class Demo2 {
public static void main(String[] args) {
File file = new File(".");
System.out.println("当前路径是:"+ file.getAbsolutePath());
File file2 = new File("..\\..\\a.txt");
System.out.println("存在吗?"+ file2.exists());
}
}
package cn.itcast.file;
import java.io.File;
import java.io.IOException;
/*
建立:
createNewFile() 在指定位置建立一个空文件,成功就返回true,若是已存在就不建立而后返回false
mkdir() 在指定位置建立目录,这只会建立最后一级目录,若是上级目录不存在就抛异常。
mkdirs() 在指定位置建立目录,这会建立路径中全部不存在的目录。
renameTo(File dest) 重命名文件或文件夹,也能够操做非空的文件夹,文件不一样时至关于文件的剪切,剪切时候不能操做非空的文件夹。移动/重命名成功则返回true,失败则返回false。
*/
public class Demo3 {
public static void main(String[] args) throws IOException {
File file = new File("F:\\aa");
System.out.println("建立成功了吗?"+file.createNewFile()); //createNewFile 建立一个指定的文件,若是该文件存在了,则不会再建立,若是尚未存在则建立。建立成功返回true,不然返回false。
File dir = new File("F:\\a.txt");
System.out.println("建立文件夹成功吗?"+dir.mkdir()); // mkdir 建立一个单级文件夹,
dir = new File("F:\\aa\\bb");
System.out.println("建立多级文件夹:"+ dir.mkdirs());
//renameTo() 若是目标文件与源文件是在同一个路径下,那么renameTo的做用是重命名, 若是目标文件与源文件不是在同一个路径下,那么renameTo的做用就是剪切,并且还不能操做文件夹。
File destFile = new File("F:\\aaaaaaw");
System.out.println("重命名成功吗?"+file.renameTo(destFile)) ;
}
}