IO流
通常我们把物质在目的地之间的转移移动称为流。
流是一组有序的数据序列,可分为输入流(Input)和输出流(Output)。I/O流提供了一条通道,可以使用这条通道把源中的字节序列送到目的地。
-
Java.io——file文件类
——InputSrteam字节输入流 —FileInputStream 文件字节输入流 —FiIterInputStream 过滤流 -Buffered Input Stream 缓存字节流 -Data Input Stream 数据过滤流 ——OutputStream字节输出流 —FileOutputStream 文件字节输入流 —FiIterOutputStream 过滤流 -Buffered Output Stream 缓存字节流 -Data Output Stream 数据过滤流
-
[ ]
-
——Reader字符流 输入流
— Input Stream Reader 可以将字节流转换为字符流(相当于一个桥梁) - File Reader 该类按字符读取流中数据 — Buffered Reader ——Writer 输出流 —Output Stream Writer -File Writer — Buffered Writer
- [ ]
- -
**File File:**File类是代表磁盘的文件或者文件夹(目录) 获取文件的方法 File(String pathname)
通过将给定路径名字字符串转换为抽象路劲名来创建一个新File实例 File(String parent, String child)
更具parent路劲名字字符串和child路劲名字符串创建一个新File实例 File(File parent,Stirng child)
根据parent抽象路劲名和child路劲名字符串创建一个新File实例 注意:File是代表文件对象,不是真正的文件,只是能对这个文件操作
/*抽象路径
* 1、项目下的路径(默认路径)File f1=new File("word.txt ");
* 2、包中的文件路径File f1=new File("src\File01\word.txt “);
* 注意:\表示文件夹
* \表示文件夹(转义字符)
*绝对路径 myEclipse外面创建的文件
*File f1=new File(” C:\ test\word.txt ");
* **/
File f1=new File(" word.txt ");//第一种构造方法
File f2=new File("src\\File01\\","word.txt ");//第二种构造方法
File dir=new File(" C:\\ test\\");//文件夹
File f3=new File(dir,"word.txt");//第三种构造方法
System.out.println(f1.getAbsolutePath());//输出文件的绝对路径
System.out.println(f2.getAbsolutePath());
System.out.println(f3.getAbsolutePath());
System.out.println(“文件名:” + f1.getName());// 输出文件名
//转义符的问题: 使用\转义符或者/解决
//相对路径:指当前程序的位置到目标文件的路径
//绝对路径:系统的根目录到目标文件的路径
System.out.println("文件的绝对路径:" + f1.getAbsolutePath());// 输出文件的绝对路径
System.out.println("是否是隐藏文件:" + f1.isHidden());// 是否是隐藏文件
System.out.println("文件的字节数:" + f1.length());
Date date = new Date(f1.lastModified());// 通过毫秒值创建日期类
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");// 文件最后修改时间
System.out.println("文件的最后修改时间:" + sdf.format(date));
// boolean del=f1.delete();//删除文件
// System.out.println(“删除文件是否成功:”+del);
try {
//已经存在的文件不能重新创建(不能覆盖已有文件)
boolean del1=f1.createNewFile();
System.out.println("创建文件是否成功"+del1);//创建文件
} catch (IOException e) {
e.printStackTrace();
文件夹的操作
创建文件夹
删除文件夹
文件夹是否存在
是否为文件夹
获取所有子文件及文件夹
package Filejia02;
import java.io.File;
public class Demo {
public static void main(String[] args) {
// File dir = new File("dir1/dir2/dir3/dir4");
// boolean flag = dir.mkdir();// 创建文件夹
// System.out.println("创建的文件夹是否成功:" + flag);
//
// boolean flag2 = dir.mkdirs();// 创建文件夹及其父文件夹(创建很多文件夹)
// System.out.println("创建多层文件夹是否成功:" + flag2);
// // 删除文件路径最后一个文件夹
// boolean del = dir.delete();// 删除文件夹
// System.out.println("删除文件是否成功:" + del);
// File f = new File("C:\\Windows\\");// C盘windows文件夹
// File files[] = f.listFiles();// 返回文件夹下所有的子文件及文件夹
// // 它返回的值是文件数组
// // 遍历数组获取所有的文件
// for (File fil : files) {
// if (fil.isFile()) {// 判断是否为文件
// System.out.println("文件:" + fil.getName());
//
// } else if (fil.isDirectory()) {// 判断是否为文件夹
// System.out.println("文件夹:" + fil.getName());
}
}
}
}