java 文件拷贝
2020-12-13 05:18
标签:输出流 reader copy put 无法读取 输出 strong jpg 构建 需求:源和目标! 那么我们需要源文件和目标文件! 构建管道的时候就需要两个:输出流和输入流管道! Eg: package july7file; //java7开始的自动关闭资源 import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; public class Demo8 { public static void main(String[] args) throws IOException { File src = new File("E:/自荐信.doc"); File tar = new File("E:/自荐信1.doc"); copy(src, tar); System.out.println("Well done !"); } public static void copy(File src, File tar) throws IOException { try (InputStream is = new FileInputStream(src); OutputStream os = new FileOutputStream(tar);) { byte[] b = new byte[1024]; int len; while ((len = is.read(b)) != -1) { os.write(b); } } catch (IOException e) { e.printStackTrace(); } } } 题目:复制图片! package july7file; /** * 文件的复制!对于本题而言,因为是图片,所以要想读出来,必须使用字节流! * 字符流必须关闭资源,而字节流可以不关闭资源!但是还是建议全部的关闭,因为也不会出错,这是关闭资源的习惯! * 另外:最常用的是字节流,因为字节流在内存中不需要缓冲区,图片,mp3等都是字节流!但是对于文字的话还是字符流比较好; * 因为字符流可以避免在字节流操作文字时出现的乱码现象(正好读取到了自定义缓冲区的分割处); */ import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStream; import java.io.OutputStream; public class Demo7 { public static void main(String[] args) throws Exception { File src = new File("D:/java.jpg"); File tar = new File("D:/meinv.jpg"); copy(src,tar); System.out.println("复制完成!"); } public static void copy(File src,File tar) throws Exception{ /* Reader r = new FileReader(src); Writer w = new FileWriter(tar);*/ /*if(!src.exists()){ throw new Exception("对不起,源文件不存在!"); }*/ InputStream in = new FileInputStream(src); OutputStream os = new FileOutputStream(tar); byte []c = new byte[1024]; int len; while((len = in.read(c)) != -1){ os.write(c); } /* w.close(); r.close();*/ } } 我的总结:对于图片的复制,可以使用字符流,但是这样的话文件可以复制成功但是无法读取! java 文件拷贝 标签:输出流 reader copy put 无法读取 输出 strong jpg 构建 原文地址:https://www.cnblogs.com/fanweisheng/p/11136217.html
上一篇:Node.js入门:模块机制