如题:
比如说E:\A 下面有很多文件夹
有 B C D E F 等等
但是我想找其中一个文件x.txt ,但是这个文件可能再其中一个目录下
当找到了这个文件后,需要将其拷贝到D:\X
的指定目录下?
请各位帮忙写下代码学习下~3Q
6 个解决方案
#1
递归listfile,判断文件名是不是x.txt,然后复制到d:/x
#2
static boolean isExist(String file,String path){
List<String> list = getChildFile(path);
if(list.size() !=0 ){
for(int i=0;i<list.size();i++){
String s = list.get(i);
String fileName = s.substring(s.lastIndexOf("/")+1, s.length());
if(file.equals(fileName)) return true;
}
}
return false;
}
static List<String> getChildFile(String path){
File file = new File(path);
if(file.isFile()){
list.add(path);
}else if(file.list().length != 0){
String str0[] = file.list();
for(int i=0;i<str0.length;i++){
String newStr = path+"/"+str0[i];
getChildFile(newStr);
}
}
return list;
}
List<String> list = getChildFile(path);
if(list.size() !=0 ){
for(int i=0;i<list.size();i++){
String s = list.get(i);
String fileName = s.substring(s.lastIndexOf("/")+1, s.length());
if(file.equals(fileName)) return true;
}
}
return false;
}
static List<String> getChildFile(String path){
File file = new File(path);
if(file.isFile()){
list.add(path);
}else if(file.list().length != 0){
String str0[] = file.list();
for(int i=0;i<str0.length;i++){
String newStr = path+"/"+str0[i];
getChildFile(newStr);
}
}
return list;
}
#3
用这个 exists
#4
借鉴一下,最近有一个项目要用到这个
#5
对该目录进行递归遍历,用isfile 和名字作为判断依据进行筛选,读到了就可以复制
#6
遍历,递归,搜搜。
#1
递归listfile,判断文件名是不是x.txt,然后复制到d:/x
#2
static boolean isExist(String file,String path){
List<String> list = getChildFile(path);
if(list.size() !=0 ){
for(int i=0;i<list.size();i++){
String s = list.get(i);
String fileName = s.substring(s.lastIndexOf("/")+1, s.length());
if(file.equals(fileName)) return true;
}
}
return false;
}
static List<String> getChildFile(String path){
File file = new File(path);
if(file.isFile()){
list.add(path);
}else if(file.list().length != 0){
String str0[] = file.list();
for(int i=0;i<str0.length;i++){
String newStr = path+"/"+str0[i];
getChildFile(newStr);
}
}
return list;
}
List<String> list = getChildFile(path);
if(list.size() !=0 ){
for(int i=0;i<list.size();i++){
String s = list.get(i);
String fileName = s.substring(s.lastIndexOf("/")+1, s.length());
if(file.equals(fileName)) return true;
}
}
return false;
}
static List<String> getChildFile(String path){
File file = new File(path);
if(file.isFile()){
list.add(path);
}else if(file.list().length != 0){
String str0[] = file.list();
for(int i=0;i<str0.length;i++){
String newStr = path+"/"+str0[i];
getChildFile(newStr);
}
}
return list;
}
#3
用这个 exists
#4
借鉴一下,最近有一个项目要用到这个
#5
对该目录进行递归遍历,用isfile 和名字作为判断依据进行筛选,读到了就可以复制
#6
遍历,递归,搜搜。