Day12-流Stream

本文介绍了Java中的流(Stream)概念,包括其单向性、输入输出流的使用,以及字节流和字符流的区别。同时,详细讲解了File类的常用方法,如判断文件存在、创建、删除等,并展示了文件目录的操作。此外,还涉及到了文件的字节数、路径获取等相关操作。
摘要由CSDN通过智能技术生成
流Stream
概念

1.流是单方向的
2.输入流只能输入in(读取),输出流只能输出out(写出)
3.流只能从头到尾的顺序读取一次
TIPS:方向一定要对,注意可以从程序的角度考虑

分类

1.根据操作数据的单位不通:字节流(二进制,所有文件)和字符流(字符,文本文件)
2.根据流的方向不同:输入流和输出流
3.组合情况:字节输入流 字节输出流 字符输入流 字符输出流

File文件流

创建File对象 new File(String pathname)
pathname是路径,路径可以是:文件
File常用方法速查表

IO流的继承结构

在JAVA中,根据出力的数据单位不同,可以把流分为字节流和字符流
字节流:针对二进制文件
字符流:针对文本文件,读写容易出现乱码的现象,在读写时,最好指定编码集为UTF-8(暂时用不到,了解一下就行)

Stream练习
package cn.qinghe.review;

import java.io.File;
import java.io.IOException;
import java.util.Arrays;

public class TestStream {
    public static void main(String[] args) throws IOException {
        File f = new File("D:\\TOOLS\\File\\z.txt");//创建File类型的f将目标地址给到(文件名写全,即包括扩展名,也就是文件类型)
        System.out.println(f.length());//获取指定文件的字节数
        System.out.println(f.exists());//true 判断指定对象是否存在
        System.out.println(f.isFile());//true 判断指定对象是否是一个文件
        System.out.println(f.isDirectory());//false 判断指定对象是否是一个文件夹
        System.out.println(f.getName());//z.txt 获取指定对象的名字
        System.out.println(f.getParent());//D:\TOOLS\File 获取指定对象的父级路径
        System.out.println(f.getAbsolutePath());//D:\TOOLS\File\z.txt 获取指定对象的完整路径
        f =new File("D:\\TOOLS\\File\\ccc.txt");
        System.out.println(f.createNewFile());//第一次为true,运行一次后再运行若不删除已创建的文件则一直为false。注意:此处记得向上抛出。
        f  = new File("D:\\TOOLS\\File\\m");
        System.out.println(f.mkdir());//创建单层文件夹
        f  = new File("D:\\TOOLS\\File\\t\\y\\u");
        System.out.println(f.mkdirs());//创建多层文件夹
        f  = new File("D:\\TOOLS\\File\\t");
        System.out.println(f.delete());//false 不能删除非空文件夹
        f =new File("D:\\TOOLS\\File\\ccc.txt");
        System.out.println(f.delete());//true 可以删除空文件
        f  = new File("D:\\TOOLS\\File");
        System.out.println(f.delete());//true 可以删除空文件夹
        f = new File("D:\\TOOLS");
        //文件列表
        String[] listName = f.list();
        System.out.println(Arrays.toString(listName));
        File[] fs = f.listFiles();
        System.out.println(Arrays.toString(fs));
        System.out.println(fs[0].length());//0
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值