首页 课程 师资 教程 报名

Java实现文件复制的四种方式

  • 2019-08-27 14:31:41
  • 2408次 动力节点

  


有很多的Java初学者对于文件复制的操作总是搞不懂,下面动力节点java学院小编将为大家分享Java实现文件复制的四种方式都是哪些?


  实现方式一:使用FileInputStream/FileOutputStream字节流进行文件的复制操作


private static void streamCopyFile(File srcFile, File desFile) throws IOException {

// 使用字节流进行文件复制

FileInputStream fi = new FileInputStream(srcFile);

FileOutputStream fo = new FileOutputStream(desFile);

Integer by = 0;

//一次读取一个字节

while((by = fi.read()) != -1) {

fo.write(by);

}

fi.close();

fo.close();

}



实现方式二:使用BufferedInputStream/BufferedOutputStream高效字节流进行复制文件


private static void bufferedStreamCopyFile(File srcFile, File desFile) throws IOException {

// 使用缓冲字节流进行文件复制

BufferedInputStream bis = new BufferedInputStream(new FileInputStream(srcFile));

BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(desFile));

byte[] b = new byte[1024];

Integer len = 0;

//一次读取1024字节的数据

while((len = bis.read(b)) != -1) {

bos.write(b, 0, len);

}

bis.close();

bos.close();

}



实现方式三:使用FileReader/FileWriter字符流进行文件复制。(注意这种方式只能复制只包含字符的文件,也就意味着你用记事本打开该文件你能够读懂)


private static void readerWriterCopyFile(File srcFile, File desFile) throws IOException  {

// 使用字符流进行文件复制,注意:字符流只能复制只含有汉字的文件

FileReader fr = new FileReader(srcFile);

FileWriter fw = new FileWriter(desFile);


Integer by = 0;

while((by = fr.read()) != -1) {

fw.write(by);

}


fr.close();

fw.close();

 }


实现方式四:使用BufferedReader/BufferedWriter高效字符流进行文件复制(注意这种方式只能复制只包含字符的文件,也就意味着你用记事本打开该文件你能够读懂)



private static void bufferedReaderWriterCopyFile(File srcFile, File desFile)  throws IOException {

// 使用带缓冲区的高效字符流进行文件复制

BufferedReader br = new BufferedReader(new FileReader(srcFile));

BufferedWriter bw = new BufferedWriter(new FileWriter(desFile));


char[] c = new char[1024];

Integer len = 0;

while((len = br.read(c)) != -1) {

bw.write(c, 0, len);

}


//方式二

/*String s = null;

while((s = br.readLine()) != null) {

bw.write(s);

bw.newLine();

}*/


br.close();

bw.close();

}



以上就是动力节点java学院小编介绍的"Java实现文件复制的四种方式"的内容,分别使用字节流、高效字节流、字符流、高效字符流四种方式实现文件复制的方法,希望以上内容对大家有帮助,更多精彩内容请关注动力节点java学院官网。



选你想看

你适合学Java吗?4大专业测评方法

代码逻辑 吸收能力 技术学习能力 综合素质

先测评确定适合在学习

在线申请免费测试名额
价值1998元实验班免费学
姓名
手机
提交