IO(输入流与输出流)

File类

File类是java.io包中很重要的一个类;
File类的对象可以表示文件,还可以表示目录,在程序中一个File类对象可以代
表一个文件或目录;
File对象可以对文件或目录的属性进行操作,如:文件名、最后修改日期、文件
大小等;
File对象无法操作文件的具体数据,即不能直接对文件进行读/写操作。
File的方法:

File file=new File("C:/a");//文件夹
File file1=new File("C:/a.txt");//文件
System.out.println(file1.canWrite());//是否可以写入
System.out.println(file1.exists());//文件是否存在
System.out.println(file1.getAbsoluteFile());//读取文件地址
System.out.println(file1.isHidden());//文件是否为隐藏模式
System.out.println(file1.isDirectory());//判断是否是目录L
System.out.println(file1.isFile());//是否为文件
System.out.println(file1.lastModified());//返回文件最后一次修改的时间
System.out.println(new Date(1695977021944L));//将long类型的实践转化为date

输入与输出的概念

输入输出(I/O) 把电脑硬盘上的数据读到程序中,称为输入,即input,进行数据 的read 操作从程序往外部设备写数据,称为输出,即output,进行数据的write 操作

字节流与字符流

从数据流编码格式上划分为

字节流:

字符流

输入流与输出流

流按着数据的传输方向分为:
 输入流:往程序中读叫输入流。
 输出流:从程序中往外写叫输出流。
 InputStream和OutputStream的子类都是字节流 可以读写二进制文
 件,主要处理音频、图片、歌曲、字节流,处理单元 为1个字节。
 Reader和Writer的子类都是字符流 主要处理字符或字符串,字符流处
 理单元为1个字符。 字节流将读取到的字节数据,去指定的编码表中获取
 对应文字字符。

字节流与字符流

字节流中常用类
字节输入流 FileInputStream
字节输出流 FileOutputStream
字符流中常用类
字符输入流 FileReader
字符输出流 FileWriter

输入输出字节流

InputStream 的基本方法
读取一个字节并以整数的形式返回(0~255),如果返回-1已到输入流的末尾。
读取一系列字节并存储到一个数组buffer, 返回实际读取的字节数,如果读取前已到输入流的
末尾返回-1
关闭流释放内存资源
OutputStream 的基本方法
向输出流中写入一个字节数据,该字节数据为参数b的低8位
将一个字节类型的数组中的从指定位置(off)开始的 len个字节写入到输出
关闭流释放内存资源

节点流与处理流

根据封装类型不同流又分为
节点流 处理流
 节点流:
如果流封装的是某种特定的数据源,如文件、字符串、字符串数组等,
则称为节点流。
 处理流:
如果流封装的是其它流对象,称为处理流。 处理流提供了缓冲功能,
提高读写效率,同时增加了一些新的方法

节点流中常用类
字节输入流 FileInputStream
字节输出流 FileOutputStream
字符输入流 FileReader
字符输出流 FileWriter
处理流中常用类
缓冲字节输出流 BufferedOutputStream
缓冲字节输入流 BufferedInputStream
缓冲字符输入流 BufferedReader
缓冲字符输出流 BufferedWriter

输入输出字符流

Reader 的基本方法
读取一个字符并以整数的形式返回, 如果返回-1已到输入流的末尾。
读取一系列字符并存储到一个数组buffer, 返回实际读取的字符数,如果读取前已到输入流的末返回-1
Writer 的基本方法
向输出流中写入一个字符数据,该字节数据为参数b的16位

一个字符类型的数组中的数据写入输出流
将一个字符类型的数组中的从指定位置(off set)开始的 length个字符写入到输出流

Print 打印流:
只做输出没有输入 打印流分为字节打印流和字符打印流
PrintWriter:
字符打印流 print方法可以打印各种类型数据
在javaweb项目中,服务器端向客户端响应数据以打印流的方式响应

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值