4、BufferedIn(out)putStream--->字节输入/输出流的缓冲区类(高效类:高效率读写)
前言
字节流一次读写一个数组的速度明显比一次读写一个字节的速度快很多,这是加入了数组这样的缓冲区效果,java本身在设计的时候,也考虑到了这样的设计思想(装饰设计模式后面讲解),所以提供了字节缓冲区流
字节缓冲输出流(写数据):BufferedOutputStream它继承至java.lang.Object< java.io.InputStream<java.io.FilterInputStream<java.io.BufferedInputStream
字节缓冲输入流(读数据):BufferedInputStream它继承至java.lang.Object<java.io.InputStream<java.io.FilterInputStream<java.io.BufferedInputStream
用法
BufferedOutputStream
public class FileOutputStreamDemo {
public static void main(String[] args) throws IOException {
/*规矩的写法
String str="中国人";
byte[]byts= str.getBytes();
File file=new File("a.txt");//文件对象
FileOutputStream fos=new FileOutputStream(file);//创建文件输出流对象
BufferedOutputStream bos=new BufferedOutputStream(fos);//创建缓冲输出流对象
bos.write(byts);
bos.close();//关闭此文件输出流并释放资源
*/
BufferedOutputStream bos=new BufferedOutputStream(new FileOutputStream("a.txt"));//创建缓冲输出流对象
bos.write("中国人".getBytes());
bos.close();//关闭此文件缓冲输出流对象并释放资源
}
}
BufferedInputStream
public class FileOutputStreamDemo {
public static void main(String[] args) throws IOException {
/*这两种方法都可以快速读取:读取多媒体文件多用此方法,读取纯文本常用下种办法
FileInputStream fis=new FileInputStream("a.txt");//创建文件输出流对象
byte[] bys = new byte[1024];
int len = 0;
while ((len = fis.read(bys)) != -1) {
System.out.println(len);//当前从文件读取到的字节数
System.out.print(new String(bys, 0, len));
}
fis.close();//关闭此文件输出流并释放资源
*/
BufferedInputStream bis=new BufferedInputStream(new FileInputStream("a.txt"));//创建缓冲输出流对象
int bys=0;
while((bys=bis.read())!=-1){
System.out.print((char)bys);
}
bis.close();//关闭此文件缓冲输出流对象并释放资源
}
}
4、BufferedIn(out)putStream--->字节输入/输出流的缓冲区类(高效类:高效率读写)的更多相关文章
- Java 7源码分析第13篇 - 字节输入输出流(1)
上一篇介绍了关于字节输入输出流的Java类框架,同时也简单介绍了一下各个类的作用,下面就来具体看一下这些类是怎么实现这些功能的. 1.InputStream和OutputStream InputStr ...
- Java IO详解(一)------字节输入输出流
File 类的介绍:http://www.cnblogs.com/ysocean/p/6851878.html Java IO 流的分类介绍:http://www.cnblogs.com/ysocea ...
- java学习笔记IO之字节输入输出流
IO字节输入输出流 OutputStream:字节输出流 该抽象类是所有字节输出流的超类: 定义了一些共性的成员方法: 1.写入一个字节 void write(int b);//b表示字节 2.写入字 ...
- Java IO详解(三)------字节输入输出流
File 类的介绍:http://www.cnblogs.com/ysocean/p/6851878.html Java IO 流的分类介绍:http://www.cnblogs.com/ysocea ...
- 《三》Java IO 字节输入输出流
那么这篇博客我们讲的是字节输入输出流:InputStream.OutputSteam(下图红色长方形框内),红色椭圆框内是其典型实现(FileInputSteam.FileOutStream) ...
- Java修炼——文件字节输入输出流复制和缓冲流复制
一:文件字节输入输出流复制 首先明确数据源和目的文件,然后就是"中转站",最后就是关闭 package com.bjsxt.ioproject; import java.io.Fi ...
- IO流 - 字节输入输出流,文件的复制
IO流 I:input - 输入(读取),eg:把硬盘的内容读取到内存 O: output - 输出(写入) eg:把内存中的东西写入硬盘保存 流:数字(字符/字节) 一般1个字符=2Byte,1By ...
- Java基础IO类之字节输入输出流
一.IO流概述 1.IO流:输入输出流(Input/Output) 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象,即数据在设备间的传输流, 流的本质是数据传输,根据数据传输特性将 ...
- IO流的字节输入输出流(InputStream,OutputStream)
字节输出流与文件字节输出流 文件存储原理和记事本打开文件原理 OutputStream及FileOutputStream import java.io.FileOutputStream; import ...
随机推荐
- scipy cluster聚类 ---Python3
官方文档: https://docs.scipy.org/doc/scipy/reference/cluster.vq.html
- SQL server Cannot find one or more
最近刚安装完sqlserver,新鲜感还没过,却出现了一大堆错误,令人头疼,其中有一个错误:在启动Microsoft SQL Server Management Studio时,出现如下错误提示,程序 ...
- Ubuntu中Qt+opencv图像显示
先抛出一个疑问,知道的希望留言解答下 (创建Application->Qt Console Application,代码与下面2.3一样,运行有时会显示图片,但大多数不显示,为什么?) 1.打开 ...
- 使用SLT 工具从SAP导入数据到SAP HANA的监控
使用SLT工具从SAP导入数据到SAP HANA主要有两种方式监控, 一是在SAP SLT服务器上使用以下T-Code: IUUC_SYNC_MON MWBMON 二是在SAP HANA Studio ...
- express mongoose 新手上路 问题记录
1.npm start启动报错,提示端口占用 app.js中添加了app.listen(3000),删掉即可 2.跳转到html页面 //ejs改为html app.engine('.html', r ...
- swift3 控件创建
//MARK:- UIScrollView let scrollView = UIScrollView() scrollView.delegate = target scrollView.backgr ...
- C#基础--值类型和引用类型
C#中大多数类型都是引用类型,只有个别特殊情况是值类型. 值类型: 枚举(enum) 结构(struct) 基础类型:int, short, char, bool....(string是引用类型) 引 ...
- CSS 待解决问题
记录一些待解决的问题 1. 关于 table 边框参差不齐问题 乍一看表头的边框有 间隙, 下边框也有点没有对其的问题. 解决方案: 给 table 添加: border-collapse: col ...
- 容易忘记的几个Linux命令
#查看文件或者目录的属性ls -ld filenamels -ld directory #vi编辑器输入:.,$d #清除全部内容 #修改管理员.用户密码passwd user #("use ...
- 向多个会话窗口发送命令 -SecureCRT
1.前提 一个服务可能部署在多台机器上,这时如果要查问题,最繁复的方法就是打开该服务的每个session,把命令在每一台机器上复制一下执行,找到相关的日志:还有一种方法就是一条命令同时向多个会话窗口发 ...