InputStream和OutputStream输入和输出流
来源:互联网 发布:当幸福来敲门 知乎 编辑:程序博客网 时间:2024/05/29 14:26
首先,先让咋们回到上一篇博客随意大意说说递归删除,递归删除一样,把查找改成delect即可,为什么要递归找出文件在删除,我看操作系统为什么文件夹下面有东西也可用删呢?
嗯,经过实验,是删不掉的,文件夹下有文件,猜测操作系统也是delect换路径在递归删除,shift+delect直接递归删除,或是直接没删不给显示了,不过不大可能毕竟系统这么多数据。
InputStream称为输入,是相互的,对我们来说,是程序输出给我们,对程序来说:是程序输出给我们。
OutputStream称为输出,是相互的,对我们来说,是我们输出给程序,对程序来说:是我们输入给程序。
是相互的,你是输出我就是接收,也就是输入给我,反之亦然。我也刚接触有点拗口,要想想,但是多想想也就顺了,都是这样。
InputStrieam与OutputStrieam都是抽象类,不能实例化,想要使用使用下面的实现子类FileInputStrieam和FileOutputStrieam。InputStream和OutputStream有些方法是抽象的有些是实现了的。
没有什么特别好提的方法,什么断点的skip,返回还有多少没读,跳过,输出也一样,输入,关闭,清理缓存。为什么要关闭·?因为你不关闭,你会一直占用着这个文件,删不掉的,不知道其他操作会怎么滴。
为什么清理缓存?存在着一样的一种情况,硬盘在高速运转,你输入,一次输入一些,一会儿输入一些,硬盘会有个定位的“磁头”?会去定位那个文件,进行输入。
这个时候用到缓冲池,什么是缓冲池,我的理解是:缓冲池顾名思义,是缓冲减少压力,怎么个法子呢?出入到缓冲池,满了在输入到文件中,减少硬盘的工作量了。不拖他。
这个什么时候一次性提交给硬盘做,是有触发条件的,满了才输入,没满又要输入怎么办?flish清理缓存,帮你把最后的送过去。
这里的缓冲池,对硬盘减少了负荷,一次输入一点速度很快,如果很多就拖着硬盘速度,缓存,网页存在缓存,是为了加快速度。常量池也称缓存池还是什么啊。反正都是一个目的:做到更好~因为不好,所以会流失一下客户。
对了,输入和输出有8位和16位之分,为啥?16位是处理文字,8位处理数字,一个文字为双字也就是2个字节,八位应该是处理的不够好。经过实验八位也能输出文件和输入文字的,要用到一些措施,应该是做的没有16位好。
缓冲池在某些情况下,可能会运用,比如那消息队列,缓存技术,这些,我现在还没有运用,说不出运用在哪些地方,后面再有机会聊聊吧。
八位输入的花,用byte[]接收,在转换位String,注意字符集,不然乱码,utf配utf,windows下文本默认是ANSI,GBK可接收,输出,也文字String转换byte[],然后批量输出byte[],
我们的输出是覆盖式输出,怎么不覆盖进行输出呢,在FlieOutputStream(),参数中除了填写指明的路径,还在填写true,代表是追加式输出,
为什么收到的文字转换为字符串,要指明长度,因为不指明,批量输入的时候按照指明的长度就那些批量输入,直到没有,进行转换String时,会把剩下没有用到的一并转换,所以指明0,长度,来说明有多长,转多长
这些都是方法没什么好说的,本章完。
- InputStream和OutputStream输入和输出流
- Java的InputStream和OutPutStream流输入与输出体会
- JAVA 的IO操作(二) 字节输出流和输入流:OutputStream和InputStream
- java中输入流和输出流的转换,inputstream 转换 outputstream
- IO 输入与输出(3) -- 节点流之一InputStream和OutputStream
- InputStream和OutPutStream类定义的字节输入/输出流常用的方法
- I学霸官方免费教程四十二 :Java流之字节流 输入流和输出流 InputStream和OutputStream
- InputStream 和OutputStream
- InputStream 和OutputStream
- InputStream 和OutputStream
- InputStream 和OutputStream
- InputStream 和OutputStream
- inputStream 和outputStream
- InputStream 和OutputStream
- InputStream 和OutputStream
- InputStream 和OutputStream
- InputStream和OutputStream
- InputStream和OutputStream
- Eclipse+Spring学习(一)环境搭建
- centos7 配置静态ip
- 对象的初始化过程
- 深入理解java线程池
- SEO从业五年,软文编写经验总结
- InputStream和OutputStream输入和输出流
- 字符串大小写逆置
- adb 的使用
- hive 内部表 和 外部表
- Linux下使用automake、autoconf生成configure文件
- 互联网产品到底如何量化评估满意度?
- 阿里达摩院火速挖人!微软、谷歌著名AI专家入职阿里人工智能实验室
- 一文总结学习Python的14张思维导图
- 发改委:组织实施2018年“互联网+”、人工智能创新发展和数字经济试点重大工程的通知