JavaSE 学习参考:IO流之字节流

字节流Stream操作单元是字节,按流的方向分为字节输入流InputStream和字节输出流OutputStream。

InputStream

是所有字节输入流的父类,包含两个核心方法:

intread()从流中一次读取一个字节,返回类型虽然为四个字节的int型,实际上只填充最后一个字节,前三个都为0。

intread(byte[] buffer)从流中连续读取多个可用字节,最不超过buffer.length中缓冲在buffer数组中,返回实际读取字节数量。

OutputStream

是所有字节输出流的父类,包含两个核心方法:

void write(intn)将参数最后一个字节输出到流中。

void write(byte[] buffer,intoffset,intlength)将缓冲在buffer数组的字节信息从索引offset开始连接取length个输出到流中。

本文以File作为输入和输出目标和源介绍文件字节输入流FileInputStream和FileOutputStream这两个流类来复制d:\a.jpg至e:\a.jpg。。

示例代码:

publicstaticvoidmain(String[]args) {

FileInputStreamfis=null;

FileOutputStreamfos=null;

try{

fis=newFileInputStream("d:\\a.jpg");

fos=newFileOutputStream("e:\\b.jpg");

intn=-1;

while((n=fis.read())!=-1){

fos.write(n);

}

}catch(FileNotFoundExceptione) {

e.printStackTrace();

}catch(IOExceptione) {

e.printStackTrace();

}finally{

try{

if(fos!=null){

fos.flush();

fos.close();

}

if(fis!=null)fis.close();

}catch(IOExceptione) {

e.printStackTrace();

}

}

}

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容