Java必看面试题——IO

字节流、字符流

字节流:InputStream、OutputStream
字符流:Reader、Writer 有缓存


判断/opt下是否有文件test.txt ,用什么语句

Panth filePath = Path.get(“/opt/test.txt”);
if(FIles.exits(filePath)) {}
Path中没有exist,没有isExists,Files中没有isExist,只有exists


读取文件的第10个字符

FileInputStream fs = null;
fs.skip(9);
fs.read();

RandomAccess RandomAccessFile(“”);
in.skip(9);
int c = in.readByte();


Buffer 的 filp方法作用()

buffer没有读写状态位,filp的作用是把position设置成0,limit设置为position,方便读取——由写模式切换到读模式

  • 使用buffer读写数据要遵循以下四个步骤:
  1. 写入数据到buffer
  2. 调用flip方法(读写切换)
  3. 从buffer中读取数据 (读取数据,读完就要清)
  4. 调用clear()方法或者compact()方法(清空缓冲区)
    clear()会清空整个缓冲区,compact()只会清除已经读过的数据

Socket的哪些方法时阻塞的?

  1. 输入操作:recv()、recvfrom()、WSARecv()和WSARecvtrom()
  2. 输出操作:send()、sendto()、WSASend()和 WSASendto()
  3. 接受连接:accept()和WSAAccept()
  4. 外出连接:connect() 和 WSAConnect()
    getInputStream 和 getOutputStream也会阻塞

IO流的close方法

根据依赖关系,如果流a依赖流b,应该先关闭a,再关闭b
例如:处理流a依赖节点流b,应该先关闭处理流a,再关闭节点流b,也可以只关闭处理流,不用关闭节点流,处理流关闭时候,会自动调用其处理的节点流的关闭方法
如果先关闭节点流,在关闭处理流,会抛出IO异常


IO Buffer状态包括哪些?

capaticy 最大容量
limit 剩余的字节数
position 当前已经读写的字节数
flag (不包括)


new FileOutputStream(name,true) 中的true的意义?

参数默认false,true表示在要写入的文件后面追加本次要写入的内容,
false,指覆盖写


File实例可以封装哪些?

文件、目录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值