整理并熟练字节流拷贝功能基本流复制

mac2022-06-30  24

整理并熟练字节流拷贝功能  基本流复制

1 缓冲流概述* 可提高IO流的读写速度* 分为字节缓冲流与字符缓冲流 2 字节输出流缓冲流BufferedOutputStream* 字节输出流的缓冲流* java.io.BufferedOuputStream 作用: 提高原有输出流的写入效率* BufferedOuputStream 继承 OutputStream* 方法,写入 write 字节,字节数组 * 构造方法:* BufferedOuputStream(OuputStream out)* 可以传递任意的字节输出流, 传递的是哪个字节流,就对哪个字节流提高效率 3 字节输入流缓冲流BufferedInputStream* 字节输入流的缓冲流* 继承InputStream,标准的字节输入流* 读取方法 read() 单个字节,字节数组 * 构造方法:* BufferedInputStream(InputStream in)* 可以传递任意的字节输入流,传递是谁,就提高谁的效率* 可以传递的字节输入流 FileInputStream

package cn.zhang.demo3;

import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;

public class HomeWork { public static void main(String[] args) { try { //创建一个mp3文件 里面写入 zhangyiyiyi FileOutputStream fos=new FileOutputStream("d:\\123.mp3"); fos.write("zhangyiyiyiyi".getBytes()); File fil=new File("d:\\123.mp3"); boolean file = fil.exists(); System.out.println("MP3文件是否存在"+file); fos.close(); //一次一字节 读文件 fun(); //一次多字节  写文件 //fun1(); // 3 字节缓冲流复制 一次读一个字节 //fun2(); //4 字节缓冲流复制 一次读一多个字节 //fun3(); } catch (IOException e) { e.printStackTrace(); } } //4 字节缓冲流复制 一次读一多个字节 public static void fun3() throws IOException{ BufferedInputStream b=new BufferedInputStream(new FileInputStream("d:\\123.mp3")); BufferedOutputStream b1=new BufferedOutputStream(new FileOutputStream("d:\\321.mp3")); byte[] bytes=new byte[1024]; int len; while((len=b.read(bytes))!=-1){ b1.write(len); System.out.println(new String(bytes,0,len)); } b1.close(); b.close(); } // 3 字节缓冲流复制 一次读一个字节 public static void fun2() throws IOException{ BufferedInputStream b=new BufferedInputStream(new FileInputStream("d:\\123.mp3")); BufferedOutputStream b1=new BufferedOutputStream(new FileOutputStream("d:\\321.mp3")); int len; while((len=b.read())!=-1){ b1.flush(); b1.write(len); System.out.println((char)len); } b1.close(); b.close(); } //一次多字节 读取文件 public static void fun1() throws IOException{ FileInputStream f=new FileInputStream("d:\\123.mp3"); byte[] bytes=new byte[1024]; int len=0; while((len=f.read(bytes))!=-1){ System.out.println(new String(bytes,0,len)); } f.close(); } //一次一字节 读取文件 public static void fun() throws IOException{ FileInputStream f=new FileInputStream("d:\\123.mp3"); int len=0; while((len=f.read())!=-1){ System.out.println((char)len); } f.close(); }}

转载于:https://www.cnblogs.com/zyEthan/p/10405542.html

相关资源:C MFC教程
最新回复(0)