1.0 概念
- 流–代表着总共的内容,分批次完成,比如100字节,我可以分2两次50字节完成,也可以分10次10字节完成
- 文件这里的内容本质是来自于硬盘的,硬盘又是操作系统管理的.因此使用某个编程语言操作文件,本质上都是调用系统的api
- 虽然不同的编程语言 操作文件的api有所差别,但基本步骤都是一样的,文件内容的操作核心步骤有4个 1.打开文件 2.关闭文件 3.读文件 4.写文件
2.0 字节流和字符流
-
字节流 为InputStream 和 OutputStream 后续一些操作字节的类都是衍生自这两个类,操作字节为单位,最小单位为字节,比如读一个和写一个都是以字节为单位,针对二进制文件用字节流
-
字符流 Reader Writer 续一些操作字符的类都是衍生自这两个类,操作字符为单位,一次读入和写出最小单位字符,针对文本文件用字符流字符已经是编码过的了 utf8格式下的文件就是3个字符,java已经帮我们把文件中的数据按照字符集处理好了的,不用我们手动去处理那几个字节是一个字符(cpp没有)
-
java IO 流是一个比较庞大的体系,涉及到非常多的类,这些不同类,都有各自不同的特性,但是总的太说,使用方法都是类似的
- 构造方法,打开文件
- close方法,关闭文