A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© lt3886930 中级黑马   /  2016-6-23 23:37  /  396 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

用字节流可以用来复制任意类型文件,因为要复制MP3文件,所以用高效字节流
        1、用File对象封装数据源
        2、用File对象封装目的地
        3、判断该File对象是否存在
                不存在就不复制,★★面试老师说有漏洞,或许这个可以加分呢?!
        4、用高效的字节输入流读取
        5、用高效的字节输出流写出
*/

//导包
import java.io.IOException;
import java.io.File;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
class CopyMP3
{
        public static void main(String[] args) throws IOException
        {
                //用File对象封装目录
                File srcfile = new File("D:\\demos\\和兰花在一起.mp3");
                //用File对象封装目录
                File destFile = new File("D:\\copyTo\\和兰花在一起.mp3");
                //调用复制的方法
                copyFile(srcfile,destFile);
        }
        public static void copyFile(File srcFile, File destFile) throws IOException
        {
                //判断该File对象是否存在
                if(!srcFile.exists())
                {
                        //不存在就不复制
                        return;
                }
                //用高效的字节输入流读取
                BufferedInputStream bis = new BufferedInputStream(new FileInputStream(srcFile));
                //用高效的字节输出流写出
                BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(destFile));
                byte[] bys= new byte[1024];
                int len = 0;
                //判断是否读到文件结尾
                while( (len = bis.read(bys)) != -1 )
                {
                        //将数据写到文件中
                        bos.write(bys,0,len);
                        //刷新缓存流
                        bos.flush();
                }
                //关闭流对象
                bis.close();
                bos.close();
        }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马