import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class 指定标题批量复制或剪切 {
public static void main(String[] args) throws IOException {
String 原文件在哪 = "d:/abc/";
String 复制到哪 = "e:/aaa/";
Boolean 是否为剪切 = true;
Boolean 是否只复制指定标题 = true;
String 指定标题包含内容 = "A";
Integer 单次流量 = 1024 * 1024 * 2;//2MB 根据电脑调整
File 文件夹=new File(原文件在哪);
File[] 文件集合 = 文件夹.listFiles();
for(int i=0;i<文件集合.length;i++){
if(是否只复制指定标题){
if(文件集合[i].getName().indexOf(指定标题包含内容) == -1){
continue;
}
}
File 文件 = new File(原文件在哪 + 文件集合[i].getName());
FileInputStream 输入流 = new FileInputStream(文件);
FileOutputStream 输出流 = new FileOutputStream(new File(复制到哪 + 文件.getName()));
byte[] 流 = new byte[单次流量];
int 真实流量;
while ( (真实流量 = 输入流.read(流)) != -1) {
输出流.write(流, 0, 真实流量);
输出流.flush();
}
输出流.close();
输入流.close();
if(是否为剪切){
文件.delete();
}
}
}
}
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class 指定标题批量复制或剪切 {
public static void main(String[] args) throws IOException {
String 原文件在哪 = "d:/abc/";
String 复制到哪 = "e:/aaa/";
Boolean 是否为剪切 = true;
Boolean 是否只复制指定标题 = true;
String 指定标题包含内容 = "A";
Integer 单次流量 = 1024 * 1024 * 2;//2MB 根据电脑调整
File 文件夹=new File(原文件在哪);
File[] 文件集合 = 文件夹.listFiles();
for(int i=0;i<文件集合.length;i++){
if(是否只复制指定标题){
if(文件集合[i].getName().indexOf(指定标题包含内容) == -1){
continue;
}
}
File 文件 = new File(原文件在哪 + 文件集合[i].getName());
FileInputStream 输入流 = new FileInputStream(文件);
FileOutputStream 输出流 = new FileOutputStream(new File(复制到哪 + 文件.getName()));
byte[] 流 = new byte[单次流量];
int 真实流量;
while ( (真实流量 = 输入流.read(流)) != -1) {
输出流.write(流, 0, 真实流量);
输出流.flush();
}
输出流.close();
输入流.close();
if(是否为剪切){
文件.delete();
}
}
}
}