博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
vivo面试学习1(io和nio)
阅读量:6031 次
发布时间:2019-06-20

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

一、io流(一次从open到底层的操作)

输入和输出流

IO流
字节流 Reader、Writer
字符流 InputStream、OutputStream

 

 

 

字节流:可以处理所有bit为单位存储的文件,也就是说可以处理所有的文件,但是在处理字符上的速度不如字符流

字符流:只能处理字符,但处理字符的能力很快 

一次读文件的操作:

采用FileInputStream的read()方法,每次从源文件中读取512个字节,存储在缓冲区buffer中,再将以buffer中的值构造的字符串new String(buffer)显示在屏幕上。

一次写文件的操作:

采用System.in.read(buffer)从键盘输入一行文字,存储在缓冲区buffer中,再用FileOutStream的write()方法,将buffer中的内容写入文件write.txt中。 

二、NIO

IO和NIO的区别
  IO NIO
对象 面向流 面向缓冲
是否阻塞
    selector监视Channel

 

 

 

 

 

 Java NIO的选择器允许一个单独的线程来监视多个输入通道。

只要Channel向Selector注册了Channel向Selector注册了某种特定的事件,Selector就会监听这个事件是否发生,一旦发生某个事件,便会通知对应的Channel。

使用选择器,借助单一线程,就可对数量庞大的i/o通道实施监控和维护。

转载于:https://www.cnblogs.com/nickup/p/9693477.html

你可能感兴趣的文章
PBM文件格式
查看>>
算法刷题笔记-stack-四则运算
查看>>
3.16
查看>>
Linux下arp用法
查看>>
表单文件上传与文件下载
查看>>
jquery 中prop()的使用方法
查看>>
下午考
查看>>
WKWebView
查看>>
创建字符设备的三种方法
查看>>
走在网页游戏开发的路上(六)
查看>>
nginx 配置的server_name参数(转)
查看>>
Uva592 Island of Logic
查看>>
C++基础代码--20余种数据结构和算法的实现
查看>>
footer固定在页面底部的实现方法总结
查看>>
nginx上传文件大小
查看>>
数字通信原理笔记(一)---概述
查看>>
HDU 2243 考研路茫茫——单词情结(自动机)
查看>>
Dubbo OPS工具——dubbo-admin & dubbo-monitor
查看>>
如何将OpenCV中的Mat类绑定为OpenGL中的纹理
查看>>
CutyCapt
查看>>