FileInputStream 、FileOutputStream完成非文本文件复制
【1】读入一个字节写出一个字节
package com.msb.io02; import java.io.*; /** * @author : liu * 日期:14:00:25 * 描述:IntelliJ IDEA * 版本:1.0 */ public class Test03 { //这是一个main方法:是程序的入口 public static void main(String[] args) throws IOException { //功能:完成图片的复制 //1.有一个源文件 File file = new File("D:\\lol.jpg"); //2.有一个目标文件 File file2 = new File("D:\\lol2.jpg"); //3.有一个输入的管道怼到源文件上面 FileInputStream fis=new FileInputStream(file); //4.有一个输出的管道怼到目标件上面 FileOutputStream fos = new FileOutputStream(file2); //5.开始复制(边读边写) int n = fis.read(); while (n!=-1){ fos.write(n); n=fis.read(); } //6.关闭流 fos.close(); fis.close(); } }
【2】利用缓冲数组
package com.msb.io02; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; /** * @author : liu * 日期:14:08:59 * 描述:IntelliJ IDEA * 版本:1.0 */ public class Test05 { public static void main(String[] args) throws IOException { //功能:完成图片的复制 //1.有一个源文件 File file = new File("D:\\lol.jpg"); //2.有一个目标文件 File file2 = new File("D:\\lol2.jpg"); //3.有一个输入的管道怼到源文件上面 FileInputStream fis=new FileInputStream(file); //4.有一个输出的管道怼到目标件上面 FileOutputStream fos = new FileOutputStream(file2); //5.开始复制 //利用缓冲数组 byte[] b=new byte[1024*6]; int n = fis.read(b); while (n!=-1){ fos.write(b,0,n); n=fis.read(b); } //6.关闭流 fos.close(); fis.close(); } }
浙公网安备 33010602011771号