Java软件低级错误(十 八):忽略InputStream.skip()返回值的处理

来源:互联网 发布:网络爸爸 下载 编辑:程序博客网 时间:2024/06/10 17:15
 

解读:
java.io.InputStream.skip(long n):跳过和放弃此输入流中的 n 个数据字节,返回的是跳过的实际字节数。如果skip方法的返回值小于要跳过得字节数,则说明有异常发生,此时需要对异常情况进行处理。

¨案例:

 

fileInputStream = new FileInputStream(file);
fileInputStream.skip(receiveFileSize);//丢弃receiveFileSize个字节的数据
oldreceiveFileSize = receiveFileSize;
out = response.getOutputStream;

需要比较skip的返回值和输入参数,如果两者不相等时,需做特殊处理。

 

两者不相等的情况可能的原因有:

1)在跳过 n 个字节之前已到达文件的末尾;

2)输入参数为负;