-
Java连载96-FileInputStream方法解析、循环输出全部内容
一、 解析available\skip\close\read(int[] a)方法以及使用read方法循环打印出所有的内容。
package com.bjpowernode.java_learning; import java.io.*; public class D96_1_CircleRead { public static void main(String[] args) throws Exception{ FileInputStream fis = new FileInputStream("C:\\Users\\lenovo1\\Workspaces\\MyEclipse CI\\Java_learning\\src\\com\\bjpowernode\\java_learning\\D95_1_FileInputStreamAnalysis.java"); byte[] bytes = new byte[1024]; //1.available方法 System.out.println(fis.available()); System.out.println("==========="); //2.skip方法 fis.skip(2);//跳过读取 两个字节 System.out.println("==========="); //3.循环打印出内容 while(true) { int temp = fis.read(bytes); if(temp==-1) break; //将byte数组中有效的数据转换成字符串 System.out.print(new String(bytes,0,temp)); //注意这里是字符串的截取,我们需要知晓这里read这个方法的返回值,所以相当于我们创建了一个数组,用来存储每一次 //读到的1kb,然后1kb,1kb的输出。之所以会使用0到temp,前面读取的时候都好说,都可以把数组填满了,但是当读到 //最后的时刻的时候,就会有占据了数组的一部分,如果我们使用定长1024那么就会,把上一次的部分内容打印了出来 } //4.int read(byte[] b)从输入流中最多b.length个字节的数据读入到byte数组中 System.out.println("==========="); //可以看出available方法是用于查看还剩余多少个字节没有读取 System.out.println(fis.available()); //5.记得关闭这个流 fis.close(); } }
二、源码:
D96_1_CircleRead.java
https://github.com/ruigege66/Java/blob/master/D96_1_CircleRead.java
出 处:https://www.cnblogs.com/ruigege0000/p/12483929.html
最新更新
带有参数的装饰器
类装饰器
django中的auth模块与admin后台管理
python的日期处理
字符串常用方法
基本数据类型概述
python-map()函数基本用法
python带你实现任意下载AcFun视频数据~
bbs项目之注册功能
变量的定义和使用
三大常用数据库事务详解之三:事务运行
三大常用关系型数据库事务详解之二:基
三大关系型数据库事务详解之一:基本概
MongoDB常用命令(2)
MongoDB基本介绍与安装(1)
SQLServer触发器调用JavaWeb接口
SQL Server索引的原理深入解析
SqlServer2016模糊匹配的三种方式及效率问题
SQL中Truncate的用法
sqlserver 多表关联时在where语句中慎用tri
VB.NET中如何快速访问注册表
ASP.NET中图象处理过程详解
Vue(1)Vue安装与使用
JavaScript 语言入门
js将一段字符串的首字母转成大写
纯原生html编写的h5视频播放器
H5仿原生app短信验证码vue2.0组件附源码地
TypeScript(4)接口
TypeScript(3)基础类型
TypeScript(2)WebStorm自动编译TypeScript配置