文档章节

Java输入输出

ytuan996
 ytuan996
发布于 11/17 10:31
字数 640
阅读 12
收藏 0

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

JDK中的InputStream/OutputStream构成了IO输入输出继承层次的基础。它们都是面向字节序列的,每次可以从序列中读入或者写出一个字节或者指定大小的字节数组。但是面向字节流的输入输出不便于处理Unicode形式存储的信息,所以针对处理字符Unicode专门设计了抽象类Reader/Writer,它们的输出输入操作都是基于两个字节的Char值。而不是一个byte。

读写字节

首先是InputStream/OutputStream,面向字节流的IO操作。

方法 描述
int read() 从字节流中读入一个字节,并返回该字节,到达文件末尾时返回-1.
int read(byte[] b) 总字节流中读入一个字节数组,并返回之际读入的字节大小,结束返回-1
int read(byte[]b, int off, int len) 同上,off指定第一个读入的字节在b中偏移,len表示一次读入的大小
long skip(long n) 跳过n个字节,返回实际跳过的字节大小
int avalilable() 在不阻塞的情况下返回序列中可用的字节数
void close() 关闭输入资源流
void mark() 和reset()配合使用,在输入流的当前位置打一个标记
void reset() 和mark配合使用,返回最后一个标记,返回后的读入将重新读入mark后的字节,没有标记时不返回
blloean markSupported() 查看这个流是否支持打标记

方法 描述
void write(int n) 写入一个字节的数据
void write(byte[] b, int off, int len) 同上,但从字节数组中写入指定大小的字节
void flush() 冲刷缓冲区
void close() 关闭输出流

字节流家族

字符流家族

附加接口

  • Readable只要一个方法read(CharBuffer),CharBuffer可以随机地读写文件,表示内存中的一个缓冲区。
  • Appendable有两个添加单个字符或者字符序列的方法, Appendable append(CharSequence csq),CharSequence描述了一个Char值序列的基本属性。String,StringBuffer,CharBuffer都实现了CharSequence.
  • Closeable 只有一个关闭资源的close方法
  • Flushable 只有一个冲刷缓冲区的方法flush().

© 著作权归作者所有

下一篇: Java执行器
ytuan996
粉丝 1
博文 48
码字总数 40235
作品 0
济南
私信 提问
Java 文件类操作API与IO编程基础知识

阅读目录: https://www.w3cschool.cn/java/java-io-file.html Java 文件 Java 输入流 Java 输出流 Java 阅读器和写入器 Java 随机访问 Java 标准流 Java Zip Jar Java 缓冲通道 Java 文件路...

boonya
10/23
50
0
Java多线程学习(五)线程间通信知识点补充

系列文章传送门: Java多线程学习(一)Java多线程入门 Java多线程学习(二)synchronized关键字(1) java多线程学习(二)synchronized关键字(2) Java多线程学习(三)volatile关键字 Ja...

一只蜗牛呀
2018/04/16
0
0
关于Java编程基础学习输入输出IO的问题

Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互...

Java小辰
2018/05/23
0
0
Java的多进程运行模式分析

一般我们在java中运行其它类中的方法时,无论是静态调用,还是动态调用,都是在当前的进程中执行的,也就是说,只有一个java虚拟机实例在运行。而 有的时候,我们需要通过java代码启动多个j...

精华之王
2009/04/11
86
0
JDK(JAVA)的安装和配置

一、下载jdk 下载jdk可以去官网下载,百度里搜索会有一大堆,jdk1.6,jdk1.7,jdk1.8都可以, 选择跟自己电脑操作版本匹配的64位或者32位 官网地址:https://www.oracle.com/technetwork/java...

嘴角轻扬30
2018/12/07
22
0

没有更多内容

加载失败,请刷新页面

加载更多

阿里巴巴的 Kubernetes 应用管理实践经验与教训

作者 | 孙健波(天元) 阿里巴巴技术专家 导读:本文整理自孙健波在 ArchSummit 大会 2019 北京站演讲稿记录。首先介绍了阿里巴巴基于 Kubernetes 项目进行大规模应用实践过程中遇到的问题;...

阿里巴巴云原生
20分钟前
3
0
pinpoint采样原理分析

使用pinpoint进行全链路监控时,支持对请求的采样,某条请求是否被采样,取决于整个链路开始的机器。该机器使用特定的采样算法。采样的标志会一直在链路中透传。比如在http里面,会在header里...

xiaomin0322
24分钟前
3
0
在IDEA开发工具中使用lombok

1. 首先我们需要安装IntelliJ IDEA中的lombok插件,打开IntelliJ IDEA后点击菜单栏中的File-->Settings,或者使用快捷键Ctrl+Alt+S进入到设置页面 我们点击设置中的Plugins进行插件的安装,在...

欧阳飘
26分钟前
3
0
爱码仕 5G生活畅想 (五) 每个人每个家庭都有一朵私有的云

30年前,微软让每个家庭都有一台电脑的理念成为了现实;而今云计算的观念已为老百姓们所熟识。数据就是能源;数据就是财富;谁生产了数据,这数据的所有权就归谁所有。随着原生云基础设施的完...

LitStone
27分钟前
3
0
嵌入式入门:嵌入式领域的职业发展方向是什么?

嵌入式入门:嵌入式领域的职业发展方向是什么? 在如今的IT市场上看,嵌入式的发展的应用都是广受欢迎的,在嵌入式入门学习中,我们可以发现嵌入式的发展方向有很多,门槛高低不一样。下面就...

xyd118
28分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部