/* IO流的分类:
* 流向: 输入流 读取数据 FileReader
* 输出流 写出数据 FileWriter
* 数据类型
* 字节流: 字节输入流 :读取数据 InputStream
* 字节输出流: 写出数据 OutputStream
* 字符流: 字符输入流:读取数据 Reader
* 字符输出流 写出数据 Writer*/
import java.io.File;
import java.io.FileOutputStream;
/*
* File:文件和目录路径名的抽象表示形式,File类的实例是不可变的
* 构造方法: 这些方法仅仅时创造了一个File对象来指向指定路径
* File(File parent, String child)
从父抽象路径名和子路径名字符串创建新的 File实例。
File(String pathname)
通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例,我们仅仅是创造了一个file对象而已。
File(String parent, String child)
从父路径名字符串和子路径名字符串创建新的 File实例。
File的常用功能:
1 创建功能boolean createNewFile()
当且仅当具有该名称的文件尚不存在时,原子地创建一个由该抽象路径名命名的新的空文件。
boolean mkdir()
创建由此抽象路径名命名的目录。
boolean mkdirs()
创建由此抽象路径名命名的目录,包括任何必需但不存在的父目录。
2 删除功能
boolean delete()
删除由此抽象路径名表示的文件或目录。
3 获取功能
File getAbsoluteFile()
返回此抽象路径名的绝对形式。
String getAbsolutePath()
返回此抽象路径名的绝对路径名字符串。
String getName()
返回由此抽象路径名表示的文件或目录的名称。
String getParent()
返回此抽象路径名的父 null的路径名字符串,如果此路径名未命名为父目录,则返回null。
File getParentFile()
返回此抽象路径名的父,或抽象路径名 null如果此路径名没有指定父目录。
4 判断功能
boolean isAbsolute()
测试这个抽象路径名是否是绝对的。
boolean isDirectory()
测试此抽象路径名表示的文件是否为目录。
boolean isFile()
测试此抽象路径名表示的文件是否为普通文件。
boolean isHidden()
测试此抽象路径名命名的文件是否为隐藏文件。
long lastModified()
返回此抽象路径名表示的文件上次修改的时间。
long length()
返回由此抽象路径名表示的文件的长度。
boolean exists()
测试此抽象路径名表示的文件或目录是否存在。
5 修改文件名*/
public class FileDemo {
public static void main(String[] args) {
//File(String pathname)
File file = new File("D:\\a\b.txt");
//File(String parent, String child)
File f2 = new File("D:\\a","b.txt");
//File(File parent, String child)
File parent = new File("D:\\a");
File f3 = new File(parent,"b.txt");
}
}
import java.io.File;
import java.io.IOException;
/* 创建功能boolean createNewFile()
当且仅当具有该名称的文件尚不存在时,原子地创建一个由该抽象路径名命名的新的空文件。
boolean mkdir()
创建由此抽象路径名命名的目录。
boolean mkdirs()
创建由此抽象路径名命名的目录,包括任何必需但不存在的父目录。
删除功能
boolean delete()
删除由此抽象路径名表示的文件或目录。
注意:删除一个文件夹,该文件夹下面不可以有其它子文件或者文件夹
绝对路径:固定不可改变的路径,以盘符开头
相对路劲:相对某个参照物,不能以盘符开头*/
public interface FileCreateDelete {
public static void main(String[] args) throws IOException {
File f = new File("D\\a\b.txt");//绝对路径
File f2 = new File("a.txt"); //相对路径
//创建功能boolean createNewFile():当指定文件不存在时创建文件并返回true 否则返回false
System.out.println(f2.createNewFile());
//boolean mkdir()
//创建由此抽象路径名命名的目录。
File f3 = new File("b");
System.out.println(f3.mkdir());
//boolean mkdirs()
//创建指定文件夹,当文件夹所在的目录不存在,就顺路一起创建了
File f4 = new File("c\\d\\e");
System.out.println(f4.mkdirs());
File f5 = new File("c.txt"); //这里要注意的一点是 不要被文件名迷惑 ,.txt不一定就是文件名,
// 也可能是文件夹 到底是什么要看你创建的是什么
System.out.println(f5.mkdir());
// boolean delete()
//当指定的文件或者文件夹存在时,删除文件并返回true,否则,返回false
f4.delete();
}
}
/* 4 判断功能
boolean isAbsolute()
测试这个抽象路径名是否是绝对的。
boolean isDirectory()
测试此抽象路径名表示的文件是否为目录。
boolean isFile()
测试此抽象路径名表示的文件是否为普通文件。
boolean isHidden()
测试此抽象路径名命名的文件是否为隐藏文件。
long lastModified()
返回此抽象路径名表示的文件上次修改的时间。
long length()
返回由此抽象路径名表示的文件的长度。
boolean exists()
测试此抽象路径名表示的文件或目录是否存在。
*/
import java.io.File;
import java.io.IOException;
public class FileJudgment {
public static void main(String[] args) throws IOException {
File f = new File("a.txt");
File f2 = new File("D:\\a\b.txt");
File f3 = new File("b");
f.createNewFile();
System.out.println(f.exists());
System.out.println(f.isAbsolute());
System.out.println(f2.isAbsolute());
System.out.println(f.isDirectory());
System.out.println(f3.isDirectory());
System.out.println(f.isFile());
System.out.println(f3.isFile());
}
}