博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_04 IO字节流_11_字节输入流一次读取多个字节...
阅读量:4326 次
发布时间:2019-06-06

本文共 474 字,大约阅读时间需要 1 分钟。

参数带字节数组的
把字节数组转换为字符串
文件里面有ABCDE
再来读取一次
再来读取一次。读取的结果是ED
再来读取,-1到时输出了。但是还是把ED读取出来了。

原理

第一步创建流对象

第二部创建数组
第三步读取数据
jav程序找JVM。JVM找OS,OS调用他的方法来读取数据
第一次读取会读到A。因为字节是两位的 所以还会读取到B
len是读取的有效字节个数
读完A和B,指针就指向C。再来第二次读取
第二次读取的是C和D
C和D就会把A和B覆盖
指针指向E,开始第三次读取。读取到E把C覆盖掉,。再读取后面没有了。所以打印出来的是E和D
读取后,指针会向后移一位到结束标记。
第四次读取,没有数据就会返回-1
方法的参数起到缓冲作用

使用循环优化代码

转换成字符串
字符串的后面有一堆的空格,因为读取的byte长度是1024的长度。就读取到了5个,。后面很多空间就浪费了
转换的时候,使用地个人构造方法来转换。有效的长度就是len

转载于:https://www.cnblogs.com/wangjunwei/p/11268356.html

你可能感兴趣的文章
tomcat 7下spring 4.x mvc集成websocket以及sockjs完全参考指南(含nginx/https支持)
查看>>
ORA-30377 MV_CAPABILITIES_TABLE not found
查看>>
寄存器(内存访问)
查看>>
Dockerfile 中的 CMD 与 ENTRYPOINT
查看>>
算法练习题
查看>>
学习使用Django一 安装虚拟环境
查看>>
Java面试题---基础篇
查看>>
C#操作注册表
查看>>
U盘做启动盘后,如何恢复原始容量
查看>>
在Ubuntu上安装JDK、Ant、Jmeter和Jenkins
查看>>
C++编译器的函数名修饰规则
查看>>
高效并发高级-黄金
查看>>
爬虫 requests模块的其他用法 抽屉网线程池回调爬取+保存实例,gihub登陆实例
查看>>
Hibernate视频学习笔记(8)Lazy策略
查看>>
log4j日志系统的使用
查看>>
Mysql查询性能优化
查看>>
20145212 罗天晨 Web安全基础实践
查看>>
解决远程桌面无法复制黏贴
查看>>
从远程库克隆(转载)
查看>>
黄老师架构师课程笔记(一)反射
查看>>