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

java常用IO流功能——字符流和缓冲流概述

前言:

整理下学习笔记,打好基础,daydayup!

 之前说了下了IO流的概念,并整理了字节流,有需要的可以看这篇

java常用应用程序编程接口(API)——IO流概述及字节流的使用

字符流

FileReader(文件字符输入流)

作用:以内存为基准,可以把文件中的数据以字符的形式读入到内存中去

输入方法为:

方法说明
public int read()每次读取一个字符返回,如果发现没有数据会返回-1
public int read(char[ ] buffer)每次用一个字符数组去读取数据,返回字符数组读取了多少个字符,如果发现没有数据会返回-1

通过上述方法可以实现单个字符读取和多个字符读取,示例如下:

 FileWriter(文件字符输出流)

作用:以内存为基准,把内存中的数据以字符的形式写到文件中去

输出方法为:

方法名称说明
void write(int c)写一个字符
void write(String str)写一个字符串
void write (String str,int off,int len)写一个字符串的一部分
void write (char [ ] cbuf)写一个字符数组
void write (char [ ] cbuf,int off,int len)写入字符数组的一部分

示例如下: 

 

 缓冲流

对原始流进行包装,以用于提高原始流读写数据的性能。根据输入输出,字节字符的不同共有四种不同的缓冲。

 

(图片来源:黑马程序员)

缓冲流如何提高性能

在字节或字符输入或输出时,会在内存创建一个缓冲池,由于内存中传输速度会很快,所以性能得到提升(缓冲池默认为8kb)

缓冲流的使用

使用Buffered进行包装即可(语法上和原始流没有任何区别)

 示例如下:

 
 结语:

整理结束,撒花!!

http://www.lryc.cn/news/325781.html

相关文章:

  • Python中模块的定义、用法
  • 【vscode 常用扩展插件】
  • Retelling|Facebook2
  • 读3dsr代码①测试
  • Vant Weapp小程序 van-uploader 文件上传点击无反应,删除无反应
  • 【力扣】55.跳跃游戏、45.跳跃游戏Ⅱ
  • 038—pandas 重采样线性插补
  • 智慧工地源码 数字孪生可视化大屏 工地管理平台系统源码 多端展示(PC端、手机端、平板端)
  • 深度学习Top10算法之深度神经网络DNN
  • 【智能算法】海马优化算法(SHO)原理及实现
  • AI大模型学习的伦理与社会影响
  • 记录些LangChain相关的知识
  • C语言例4-7:格式字符f的使用例子
  • [蓝桥杯 2019 省 A] 修改数组
  • Git基础(25):Cherry Pick合并指定commit id的提交
  • C语言结构体之位段
  • 2016年认证杯SPSSPRO杯数学建模D题(第二阶段)NBA是否有必要设立四分线全过程文档及程序
  • 登录校验解决方案JWT
  • Flutter开发进阶之瞧瞧BuildOwner
  • 大量免费工具使用(提供api接口)
  • 网络探测工具Nmap介绍
  • 20240319-2-机器学习基础面试题
  • 0202矩阵的运算-矩阵及其运算-线性代数
  • python中的__dict__
  • 数学分析复习:无穷乘积
  • 02 React 组件使用
  • 你就是上帝
  • Spring Cloud: openFegin使用
  • 流畅的 Python 第二版(GPT 重译)(二)
  • Flutter 旋转动画 线性变化的旋转动画