一、字节流介绍
1、字节输出流 OutputStream类定义 public abstract class OutputStream extends Object implements Closeable, Flushable 此抽象类是表示输出字节流的所有类的超类。输出流接受输出字节并将这些字节发送到InputStream 类某个接收器要向文件中输出,使用FileOutputStream类
2、字节输入流 定义: public abstract class InputStream extends Object implements Closeable 此抽象类是表示字节输入流的所有类的超类。 FileInputStream 从文件系统中的某个文件中获得输入字节。
1、字节输出流 OutputStream类定义 public abstract class OutputStream extends Object implements Closeable, Flushable 此抽象类是表示输出字节流的所有类的超类。输出流接受输出字节并将这些字节发送到InputStream 类某个接收器要向文件中输出,使用FileOutputStream类
2、字节输入流 定义: public abstract class InputStream extends Object implements Closeable 此抽象类是表示字节输入流的所有类的超类。 FileInputStream 从文件系统中的某个文件中获得输入字节。
二、代码部署
代码中要实现从E盘的DesktopFile/Android/文件夹下面将CSDN.jpg,复制到E盘的DesktopFile/Android/test文件夹下面,当然其中的文件夹位置可以自己改变,在这里只不过使用的是固定的方式,在实际应用中,常常使用动态获取图片地址的方式进行复制文件,下面就是复制文件时的代码操作
package java_move;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
public class move {
public static void main(String[] args)
{
String src="E:/DesktopFile/Android/CSDN.jpg";
String target="E:/DesktopFile/Android/test/CSDN.jpg";
copyFile(src,target);
}
public static void copyFile(String src,String target)
{
File srcFile = new File(src);
File targetFile = new File(target);
try {
InputStream in = new FileInputStream(srcFile);
OutputStream out = new FileOutputStream(targetFile);
byte[] bytes = new byte[1024];
int len = -1;
while((len=in.read(bytes))!=-1)
{
out.write(bytes, 0, len);
}
in.close();
out.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("文件复制成功");
}
}
对于图片文件能够如此操作,由此可知其他文件也能够进行类似操作。你当然更可以在转存的过程中进行其他操作,比如说加解密,更改内容等等操作
以上就是图片的复制功能的实现。