流的概述
流是一组有序的数据序列,根据操作类型,可分为输入流和输出流两种。即I/O(Input/Output,输入/输出)。
输入模式
程序从指向源的输入流中读取源中数据。简单的说就是,程序充文件中读取信息。
输出模式
程序通过向输出流中写入数据把信息传递到目的地。简单的说就是通过程序将数据传递给文件
File类
在Java的io包有一个File类,File类是包中唯一代表磁盘文件本身的对象,同时还可以代表文件夹,就是说可以用他来创建文件或者文件夹。同时可以调用File类中的方法,实现创建,删除,重命名文件等操作。(File是代表文件的对象,并不是真正的文件,只是能对这个文件操作)
File类的三种创建的构造方法
个人比较喜欢第一种的构造方法。
文件(文件夹)的创建与删除
public class Study {
public static void main(String[] args){
File f = new File("word.txt");//创建文件对象
//创建文件
try {
f.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
}
调用createNewFile()方法,完成对文件的创建。运行以后就会在你Java项目目录下创建一个word.txt文件,如图所示:
删除文件调用delete()方法即可
public class Study {
public static void main(String[] args){
File f = new File("word.txt");//创建文件对象
//创建文件
try {
f.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
//删除文件
f.delete();
}
}
运行结束后,存在于项目目录下的word.txt就会被删除了。
File类提供了很多方法来获取文件本身信息
方法 | 作用 |
---|---|
getName() | 获取文件的名称 |
canRead() | 判断文件是否为可读的 |
canWrite() | 判断文件是否可被写入 |
exits() | 判断文件是否存在 |
length() | 获取文件的长度(单位:字节) |
getAbsolutePath() | 获取文件的绝对路径 |
getParent() | 获取文件的父路径 |
isFile() | 判断文件是否存在 |
isDirectory() | 判断文件是否为一个目录(文件夹) |
isHidden() | 判断文件是否为隐藏文件 |
lastModified() | 获取文件最后修改时间 |
lastFiles() | 获取文件夹下的所有子文件及文件夹 |
File对文件夹的创建与删除
public class Study {
public static void main(String[] args){
File f = new File("word");//创建文件夹对象
//创建文件夹
f.mkdir();
}
}
调用mkdir()方法,完成对文件夹的创建,路径为项目目录内,运行完成后,项目目录里会出现一个word的文件夹
当你要创建多个文件夹时,只需要在mkdir()方法后面加上一个s,变成mkdirs()方法即可
File f = new File("word/word2/word3");//创建文件夹对象
//创建文件夹
f.mkdirs();
删除文件夹同删除文件的方法一样,delete()方法,但是如果你创建了多个文件夹,他只会删除最后一个文件夹。