A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© yhukghdh 初级黑马   /  2018-11-22 13:21  /  442 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

    今天又为大家分享一些我的笔记。
    什么是IO:生活中,你肯定经历过这样的场景。当你编辑一个文本文件,忘记了 ctrl+s ,可能文件就白白编辑了。当你电脑上插入一个U盘,可以把一个视频,拷贝到你的电脑硬盘里。那么数据都是在哪些设备上的呢?键盘、内存、硬盘、外接设备等等。我们把这种数据的传输,可以看做是一种数据的流动,按照流动的方向,以内存为基准,分为 输入input 和 输出output ,即流向内存是输入流,流出内存的输出流。Java中I/O操作主要是指使用 java.io 包下的内容,进行输入、输出操作。输入也叫做读取数据,输出也叫做作写出数据。
    IO的分类:根据数据的流向分为:输入流和输出流。输入流 :把数据从 其他设备 上读取到 内存 中的流。输出流 :把数据从 内存 中写出到 其他设备 上的流。格局数据的类型分为:字节流和字符流。字节流 :以字节为单位,读写数据的流。字符流 :以字符为单位,读写数据的流。
    字节流:一切文件数据(文本、图片、视频等)在存储时,都是以二进制数字的形式保存,都一个一个的字节,那么传输时一样如此。所以,字节流可以传输任意文件数据。在操作流的时候,我们要时刻明确,无论使用什么样的流对象,底层传输的始终为二进制数据。
    字节输出流【OutputStream】:java.io.OutputStream 抽象类是表示字节输出流的所有类的超类,将指定的字节信息写出到目的地。它定义了字节输出流的基本共性功能方法。public void close() :关闭此输出流并释放与此流相关联的任何系统资源。public void flush() :刷新此输出流并强制任何缓冲的输出字节被写出。public void write(byte[] b) :将 b.length字节从指定的字节数组写入此输出流。public void write(byte[] b, int off, int len) :从指定的字节数组写入 len字节,从偏移量 off开始输
出到此输出流。public abstract void write(int b) :将指定的字节输出流。
    FileOutputStream类:OutputStream 有很多子类,我们从最简单的一个子类开始。java.io.FileOutputStream 类是文件输出流,用于将数据写出到文件。构造方法
public FileOutputStream(File file) :创建文件输出流以写入由指定的 File对象表示的文件。public FileOutputStream(String name) : 创建文件输出流以指定的名称写入文件。当你创建一个流对象时,必须传入一个文件路径。该路径下,如果没有这个文件,会创建该文件。如果有这个文件,会清空这个文件的数据。
    数据追加续写:经过以上的演示,每次程序运行,创建输出流对象,都会清空目标文件中的数据。如何保留目标文件中数据,还能继续添加新数据呢?public FileOutputStream(File file, boolean append) : 创建文件输出流以写入由指定的 File对象表示的文件。public FileOutputStream(String name, boolean append) : 创建文件输出流以指定的名称写入文件。这两个构造方法,参数中都需要传入一个boolean类型的值, true 表示追加数据, false 表示清空原有数据。
    好啦,今天就为大家介绍这些,我们下次再见!

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马