BufferedOutputStream
BufferedOutputStream
BufferedOutputStream是字节流,实现缓冲的输出流,可以将多个字节写入底层输出流中,而不必对每次字节写入调用底层系统
应用实例
完成音乐/图片 的拷贝(要求使用BufferedOutputStream)
//演示使用BufferedOutputStream 和 BufferedInputStream 使用
public class BufferedCopy2_ {
public static void main(String[] args) {
String srcFilePath = "d:\\pic.JPG";
String destFilePath = "d:\\pic2.JPG";
//创建BufferedOutputStream对象和BufferedInputStream对象
BufferedInputStream bis = null;
BufferedOutputStream bos = null;
try {
//因为FileInputStream继承了InputStream
bis = new BufferedInputStream(new FileInputStream(srcFilePath));
bos = new BufferedOutputStream(new FileOutputStream(destFilePath));
//循环读取文件,并写入到destFilePath
byte[] buff = new byte[1024];
int readLen = 0;
//当返回-1时表示文件读取完毕
while ((readLen = bis.read(buff)) != -1) {
bos.write(buff,0,readLen);
}
System.out.println("文件拷贝成功···");
} catch (IOException e) {
e.printStackTrace();
} finally {
//关闭流,关闭外层的处理流即可,底层会去关闭节点流
try {
if (bis != null) {
bis.close();
}
if (bos != null) {
bos.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?