JAVA IO流read方法基础使用
java io流read方法基础用法
- 一、FileInputStream
- 二、字节数组读取
- 三、循环读取
一、FileInputStream
首先使用FileInputStream创建一个读入流,读取的文件内容为abc三个字母
class readTest{public static void main(String[] args){//手敲没有处理异常try catch语句FileInputStream fis = new FileInputStream("f1.txt");
//read方法,每次只读一个字节,一个英文字母就是一个字节,所以每次只读到一个字母。
//read方法的返回值是int类型,就是实际的字节内容
int readdata = fis.read();
System.out.println(readdata);//本次读到的是97
System.out.println((char)readdata);//将97转换为字符a
System.out.println(String.valueOf((char)readdata));//得到字符串areaddata = fis.read();
System.out.println(readdata);//本次读到的是98
System.out.println((char)readdata);//将98转换为字符b
System.out.println(String.valueOf((char)readdata));//得到字符串breaddata = fis.read();
System.out.println(readdata);//本次读到的是99
System.out.println((char)readdata);//将99转换为字符c
System.out.println(String.valueOf((char)readdata));//得到字符串c//读取后关闭流
fis.close();}}
二、字节数组读取
//逐个读取字符的效率较低,所以改进为每次读2个字节的内容FileInputStream fis = new FileInputStream("f1.txt");
byte[] bytes = new byte[2];//new一个byte数组,长度为2,每次可以往里面最多读2个字节
int readcount = fis.read(bytes);//传入数组后,read的返回值为读到的字节数量,就是读到了几个
System.out.println(readcount);//输出结果为2,读到了2个字节的内容
System.out.println(new String(bytes));//将读到字节的数组转换成字符串:abreadcount = fis.read(bytes);//继续用2个长度的数组进行读取
System.out.println(readcount);//输出结果为1,读到了1个字节的内容。
System.out.println(new String(bytes));//将读到字节的数组转换成字符串:cb。
//虽然读到了1个字节,但新读到的字节只把数组中的历史的第一个字节给覆盖了,第二个字节还存在,所以数组转换为字符串后是cbreadcount = fis.read(bytes);//继续用2个长度的数组进行读取
System.out.println(readcount);//输出结果为-1,因为没有读取到内容。fis.close();
三、循环读取
//我们需要的是将读到的数字字节转换为字符串,上述方法显然没有做到,进行改进。FileInputStream fis = new FileInputStream("fis.txt");int readcount = null;
byte[] bytes = new byte[2];//改进1,使用读取不到内容返回-1的特征进行循环读取
while((readcount = fis.read(bytes)) != -1){System.out.println(readcount);
System.out.println(new String(bytes, 0, readcount));//从0开始,将数组转换为字符串,转换个数为readcount。}
fis.close();
JAVA IO流read方法基础使用相关推荐
- java io流 教程_Java基础教程:IO流与文件基础
Java:IO流与文件基础 说明: 本章内容将会持续更新,大家可以关注一下并给我提供建议,谢谢啦. 走进流 什么是流 流:指的是从源到目的地的字节的有序序列. 在Java中,可以从其中读取一个字节序列 ...
- Java基础教程:IO流与文件基础
Java:IO流与文件基础 说明: 本章内容将会持续更新,大家可以关注一下并给我提供建议,谢谢啦. 走进流 什么是流 流:从源到目的地的字节的有序序列. 在Java中,可以从其中读取一个字节序列的对象 ...
- java io flush_《文件传输基础——Java IO流》,对其中flush方法的思考
在学习了<文件传输基础--Java IO流> 课程后,发现自己对flush()方法的调用有很多疑惑.在查询资料和自己看源码以及动手试验之后发现有以下几个特点.如有误也请大家指正出来,一切为 ...
- [重学Java基础][Java IO流][Exter.2]IO流中几种不同的读写方法的区别
[重学Java基础][Java IO流][Exter.2]IO流中几种不同的读写方法的区别 Read 读入方法 read(): 一般是这种形式 public int read() 1.从流数据中读取的 ...
- Java基础17:Java IO流总结
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/a724888/article/details/80201802 这位大侠,这是我的公众号:程序员江湖 ...
- java io流的学习总结~~
java io流的学习总结~~ 流的概念和作用 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特性将流抽象为各种类, ...
- java IO流详解及特性
流的概念和作用 学习Java IO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...
- JAVA IO流(韩顺平)
目录 一.文件 1.1 什么是文件 1.2 文件流 二.常用的文件操作 2.1 创建文件对象相关构造器和方法 2.1.1 代码实现 2.2 获取文件的相关信息 2.2.1 代码实现 2.2.2 相对路 ...
- java byte char io流_一文带你看懂JAVA IO流,史上最全面的IO教学
原标题:一文带你看懂JAVA IO流,史上最全面的IO教学 一.IO流是什么 惯例引用百科的回答 流是一种抽象概念,它代表了数据的无结构化传递.按照流的方式进行输入输出,数据被当成无结构的字节序或字符 ...
最新文章
- SQL性能--left join和inner join的运行速度与效率
- 笔记1——C++多态与Java多态的异同
- 贪婪算法近似集合覆盖问题的解
- mysql bin oct_python 讲解进制转换 int、bin、oct、hex
- 第4章 旋转的圆弧(《Python趣味创意编程》教学视频)
- 修改JBoss-7.1.1 http访问端口并取消JBoss内网访问限制
- 新安装的mysql设置密码
- 基础:用android开发的ASCII码转换器
- 训练GAN的16个trick
- 论文摘要翻译,多语言纯人工翻译
- 专硕计算机考研英语一还是二,学硕只会考英语一?专硕只会考英语二?
- 星期零参展FHC,推出新品“Pastrami”和“微笑乐摇杯”,引爆植物肉潮流
- Oracle 调优确定存在问题的SQL
- 某宝付费买的价值上万的60G的Python学习资源,0基础轻松赚钱到手软,请低调使用,禁止外传~...
- GICv3_LPI机制
- java中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和suspend()方法为何不推荐使用?
- 3轮全向轮正解---41
- uniapp发布h5和小程序样式或者一些其他问题
- 个人博客、开源文档的建站神仙组合 Vercel + Docusaurus
- Vs Cood更新失败
热门文章
- Android开发解决加载图片OOM问题(非常全面 兼顾4 0以下系统)(by 星空武哥)
- php抽奖算法,php抽奖算法
- Host 、Origin、 Referer的区别,Origin是跨域特有的属性
- Android相机Camera基础
- ABAQUS复合材料
- Java读取文件夹下的指定类型的文件(包含子文件夹)
- 最全解决 PKIX问题方案:sun.security.validator.ValidatorException: PKIX path building failed:
- C#创建类库并调用类库(VS2019)
- 生活随记-防蚊子咬的办法
- 象棋c语言算法,中国象棋的算法是怎样的?