输入输出处理(IO)(备忘)——上

一、概述:

了解

1、二进制文件的读写;

2、重定向标准IO;

3、对象的序列化。

理解

1、File类及其使用;

2、Java流的概念及其分类;

3、文本文件的读写。

运用

1、使用Java流读写文本文件。

二、IO概述

1、

2、java.io

读取

写入

打开流

打开流

如有更多信息则读取信息

如有更多信息则写入信息

关闭流

关闭流

三、File

1、在java.io.File

2、File类的构造方法

构造方法

说明

File(String pathname)

接收文件名作为字符串,通过将给定路径名字符串转换为抽象路径名来创建一个新File实例;

File(String parent,String child)

根据parent路径名字符串和child路径名字符串创建一个新File实例;

File(File parent,String child)

根据parent抽象路径名和child路径名字符串创建一个新File实例;

File(URI uri)

通过将给定的fileURI转换为一个抽象路径名来创建一个新的File实例。

3、File类常用方法

(1)查询文件属性

这是差不多的常用的方法,还有其他方法可以查API

(2)创建和删除文件以及目录

四、java中的流

1、流的概述

(1)流的概念

流就是一连串流动的字符

(2)流特性

先进先出的方式传递信息(有序的);一个字节序列;具有方向性:输入流、输出流。

(3)读写在流中的概述

v 流与源数据源和程序之间的关系:

v流与目标数据源和程序之间的关系:

2、流分类

(1)按照流向划分

流的基类:

按流向区分

输出流——OutputStream和Writer作为基类

输入流——InputStream和Reader作为基类

(2)按照处理数据单元划分

按照处理数据单元划分

字节流

字节输入流InputStream基类

字节输出流OutputStream基类

字符流

字符输入流Reader作为基类

字符输出流Writer作为基类

(3)字节流与字符流的区别:

字节流

字节流读取的时候,读到一个字节就返回一个字节

字节流可以处理所有类型数据,如图片,mp3,avi等。

字符流

字符流使用了字节流读到一个或多个字节(中文对应的字节数是两个,UTF-8码表中是3个字节)时,先去查指定的编码表,将查到的字符返回。

而字符流只能处理字符数据。

总之,只要是处理纯文本的数据,就要优先考虑字符流,除此之外都使用字节流。

五、字节流

1、字节流可以操作任何数据,字节流使用的数组是字节数组,byte[]buf

2、字节流基类(InputStream/OutputStream)概述

(1)InputStream的体系结构

(2)java.io.InputStream包

(3)OutputStream的体系结构

(4)java.io.OutputStream包

3、FileInputStream与FileOutputStream读文本文件

(1)FileInputStream类

v FileInputStream是InputStream的子类;

v FileInputStream的构造方法:

构造方法

说明

FileInputStream(File file)

File指定文件数据源

FileInputStream(String name)

Name指定文件数据源,包含路径信息

v 读取文件内容示例

步骤:第一步:创建对应的流;第二步:根据流的方法读写文件内容;第三步:关闭流。

(2)FileOutputStream类

v FileOutputStream是OutputStream类的子类;

v FileOutputStream的构造方法:

 

构造方法

说明

FileOutputStream(File file)

File指定文件目标数据源

FileOutputStream(String name)

Name指定文件目标数据源,包含路径信息

FileOutputStream(String name,boolean append)

append若true,则在文件末尾添加数据

v 示例:同输入流,但是值得注意的是,字节流操作的数据是字节数组。

六、字符流

1、字符流基类概述

因为数据通常都以文件形式存在,所以就要找到IO体系中可以用于操作文件的流对象。通过名称可以更容易获取该对象,因为IO体系中的子类名后缀绝大部分是父类名称,而前缀都是体现子类功能的名字。

(1)Reader的体系结构

(2)java.io.Reader包

(3)Writer的体系结构

(4)java.io.Writer包

2、FileReader与FileWriter对文件(文本文件)的读写

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值