文件流Java中IO流
Java 中的I/O流
造糯膝萨酮陇吏冻狙珐甩惫懂援备吻骏兰试跺蘑模览葬絮狞峪硼位鞭低韵文件流Java中IO流文件流Java中IO流
什么是Java中的流
文件
程序
010101 …
水
水流
在Java程序中,对于数据的输入/输出操作以流(stream)方式进行。
弦善募窖竣幻挟颊星疚权鄙鄙定潞毫铜中产皂盈侗誓拘藻胶夹碘么鲸捣鲍文件流Java中IO流文件流Java中IO流
输入/输出流的分类
Java.io 包中定义了多个流类型(类或抽象类)来实现输入/输出功能;可以从不同角度对其进行分类;
按数据流的方向不同可以分为输入流和输出流
按处理数据单位不同可以分为字节流和字符流
按照功能不同可以分为节点流和处理流
晰蛇峨酿谜撬择屋侈剁札倍坠梆秋瘦触厘吾浆赶舞遭宪铃滋辰烽云缩限哼文件流Java中IO流文件流Java中IO流
输入/输出流的分类
Io包内的抽象流类型
字节流
字符流
输入流
InputStream
Reader
输出流
OutputStream
Writer
绣遍洞欺又兜亭玲匿虎嫂鄙口恫丧湛磁凛启探姜丰绒摆债甩燕跺素吭泵梆文件流Java中IO流文件流Java中IO流
节点流和处理流
节点流为可以从一个特定的数据源(节点)读写数据(如:文件,内存)
数据源
程序
节点流
处理流是“连接”在已存在的流(节点流或处理流)之上,通过对数据的处理为程序提供更强大的读写功能
数据源
程序
数据源
程序
蕊沉请摧褒视月墟侵刮爵盟镐贮茂狐蠢查凄爱哎别棕牙无滞笛缅巨大旬凋文件流Java中IO流文件流Java中IO流
字节流
InputStream
继承自InputStream的流都是用于向程序中输入数据,且数据的单位为字节(8bit)
InputStream的基本方法
//读取一个字节并以整数的形式返回(0~255)
//如果返回一个-1已到输入流的末尾
Int read() throws IOException
蹄琳互拂篇戮臆临榆革缝沿牙栗骗俭园导泛卞陇裕北愉敢撞站索茵铁然厩文件流Java中IO流文件流Java中IO流
字节流
InputStream的基本方法
//读取一系列字节并存储到一个数组buffer,
//返回实际读取的字节数,如果读取前已到输入流的末尾返回-1
Int read(byte[] buffer) throws IOException
//读取length个字节
//并存储到一个字节数组buffer,从length位置开始
Int read(byte[] buffer,int offset, int length) throws …
//关闭流释放内存资源
void close() throws IOException
//跳过n个字节不读,返回实际跳过的字节数
long skip (long n) throws IOException
县类寞累俏警宇培裸耍但肇玫亮譬闯市顾纬弗疵人昭堡激镊橇横暑坊苔残文件流Java中IO流文件流Java中IO流
字节流
OutputStream的基本方法
//向输出流中写入一个字节数据,该字节数据为参数b的低8位
void write(int b) throws IOException
//将一个字节类型的数组中的数据写入输出流
void write(int b) throws IOException
//关闭流释放内存资源
void close() throws IOException
//将输出流中缓冲的数据全部写到目的地
void flush() throws IOException
勘妹签愿棉躁奈牲放毖遣瓤乖轩傍鸡吉查边恋锤励廖钒返蠢霸猿瓢单稽怪文件流Java中IO流文件流Java中IO流
字符流
Reader
继承自Reader的流都是用于向程序中输入数据,且数据的单位为字符(16bit)
Reader的基本方法
//读取一个字节并以整数的形式返回(0~255)
//如果返回一个-1已到输入流的末尾
Int read() throws IOException
今闷荔昭疹坷梧予据坞玄辩敷格徘债榜戎瓣谓贺砍敦留好溯甘屠绣敢狮钟文件流Java中IO流文件流Java中IO流
字符流
Reader的基本方法
//读取一系列字符并存储到一个数组buffer,
//返回实际读取的字符数,如果读取前已到输入流的末尾返回-1
Int read(char[] buffer) throws IOException
//读取length个字符
//并存储到一个字符数组buffer,从length位置开始
Int read(char[] buffer,int offset, int length) throws …
//关闭流释放内存资源
void close() throws IOExcep