当前位置: 首页 > wzjs >正文

网站建设工作分解结构词典脚本外链平台

网站建设工作分解结构词典,脚本外链平台,网站设计要求 优帮云,网站开发与维护价格目录 缓冲流字节缓冲流构造方法代码示例原理 字符缓冲流构造方法readLine()newLine()缓冲区 缓冲流 字节缓冲流 字节缓冲流就是底层自带了缓冲区的字节流,提高了读取/写入的性能 构造方法 BufferedInputStream 字节缓冲输入流 public BufferedInputStream(InputS…

目录

  • 缓冲流
    • 字节缓冲流
      • 构造方法
      • 代码示例
      • 原理
    • 字符缓冲流
      • 构造方法
      • readLine()
      • newLine()
      • 缓冲区

缓冲流

字节缓冲流

字节缓冲流就是底层自带了缓冲区的字节流,提高了读取/写入的性能

构造方法

  • BufferedInputStream 字节缓冲输入流

    • public BufferedInputStream(InputStream is) 把基本流包装成高级流,提高读取数据的性能,缓冲区大小默认为 8129
    • public BufferedInputStream(InputStream is,int size) 把基本流包装成高级流,提高读取数据的性能,并指定缓冲区大小
  • BufferedOutputStream 字节缓冲输出流

    • public BufferedOutputStream(OutputStream os) 把基本流包装成高级流,提高写入数据的性能,缓冲区大小默认为 8129
    • public BufferedOutputStream(OutputStream os,int size) 把基本流包装成高级流,提高写入数据的性能,并指定缓冲区大小

代码示例

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;public class Demo {public static void main(String[] args) throws IOException  {// 创建对象BufferedInputStream bis = new BufferedInputStream(new FileInputStream("aaa.txt"));BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("bbb.txt"));// 复制数据int chr;while((chr = bis.read()) != -1) {bos.write(chr);}/* * byte[] bytes = new byte[1024];* int len;* while((len = bis.read(bytes)) != -1){* 		bos.write(bytes,0,len);* }*/// 释放资源bos.close();bis.close();}
}

原理

以下是原理图:

在这里插入图片描述

  1. 如果用的是空参 read 方法
    • 变量 ch 作为两个缓冲区之间的临时存储空间,一个字节一个字节的将数据从输入流的缓冲区传到输出流的缓冲区
  2. 如果用的是有参 read 方法
    • 字节数组 bytes 作为两个缓冲区之间的临时存储空间,将数组长度的字节数据从输入流的缓冲区传到输出流的缓冲区

字符缓冲流

字符缓冲流就是底层自带了缓冲区的字符流,提高了读取/写入的性能

构造方法

  • BufferedReader 字符缓冲输入流

    • BufferedReader(Reader r)
    • BufferedReader(Reader r,int size)
  • BufferedWriter 字符缓冲输出流

    • BufferedWriter(Writer w)
    • BufferedWriter(Writer w,int size)

readLine()

字符缓冲输入流的特有方法

public String readLine() 读取一行数据,如果没有数据可读,返回 null

代码示例

  1. 读取一行数据:

    import java.io.BufferedReader;
    import java.io.FileReader;
    import java.io.IOException;public class Demo {public static void main(String[] args) throws IOException  {// 创建对象BufferedReader br = new BufferedReader(new FileReader("aaa.txt"));// 读取数据String line = br.readLine();System.out.println(line);// 释放资源br.close();}
    }
    

    注意事项:readLine 方法一次读取一整行数据,遇到回车换行结束,但是不会把回车换行读取到内存当中

  2. 循环读取

    import java.io.BufferedReader;
    import java.io.FileReader;
    import java.io.IOException;public class Demo {public static void main(String[] args) throws IOException  {// 创建对象BufferedReader br = new BufferedReader(new FileReader("aaa.txt"));// 读取数据String line;while((line = br.readLine()) != null) {System.out.println(line);}// 释放资源br.close();}
    }
    

newLine()

字符缓冲输出流的特有方法:

public void newLine() 跨平台的换行

代码示例

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;public class Demo {public static void main(String[] args) throws IOException {// 创建对象BufferedWriter bw = new BufferedWriter(new FileWriter("bbb.txt"));// 写入数据bw.write("月色真美");bw.newLine();bw.write("跟你一样");// 释放资源bw.close();}
}

注意事项:如果要开追加模式(续写),true 应该加在 FileWriter 里面,因为 BufferedWriter 没有这个模式

缓冲区

虽然字节缓冲流和字符缓冲流的缓冲区长度都为 8192,但是字节缓冲流的是 8192 个字节,是 byte 类型的,占内存 8K,而字符缓冲流的是 8192 个字符,是 char 类型的,占内存 16K

http://www.dtcms.com/wzjs/270395.html

相关文章:

  • 电子商务网站管理的基本内容网络营销软件排行
  • 景区网站建设的好处青岛网站排名提升
  • 做动态的网站适合发表个人文章的平台
  • 展会网站建设搜狗网站收录入口
  • 新闻标题做的好的网站aso应用优化
  • 防邪办网站建设方案文档服务器域名怎么注册
  • 免费咨询大夫长沙网站seo优化排名
  • 网络公司做网站的合同网站维护
  • 自己制作网站需要什么软文写作范文500字
  • 东城东莞网站建设宁波网站推广哪家公司好
  • 怎样建设网站赚钱国外网站制作
  • 案例网站模板_案例网爱站网挖掘关键词
  • 外贸网站建设公司服务aso排名服务公司
  • 外贸英语学习网站提高网站排名
  • 网站建设成本报表app广告联盟
  • 网站改版上线微信软文模板
  • 网站建设所需基本资料子域名查询工具
  • 做医学网站高级seo
  • 网站是怎么赢利的百度爱采购优化
  • 杭州哪家做企业网站seo查询工具网站
  • 网店网站建设网络销售推广平台
  • 做网站 除了域名微信营销的方法和技巧
  • 邻水建设局网站杭州网络
  • 火车头 wordpress xml前端seo怎么优化
  • 手机分销网站建设seo精华网站
  • 淄博做网站建设的公司网站排名优化怎么做
  • 自己做外贸网站哪个平台可以随便发广告
  • 如何开发微信公众号小程序怎么优化一个网站
  • 相亲网站开发网站代运营价格
  • wordpress htmlgoogle移动服务应用优化