黑马程序员技术交流社区
标题:
【IO问题】求大神帮忙!
[打印本页]
作者:
袁梦希
时间:
2013-4-3 21:09
标题:
【IO问题】求大神帮忙!
本帖最后由 袁梦希 于 2013-4-4 17:23 编辑
需求
:
1. 给定一个路径,然后找出这个路径中所有.java文件和.txt文件(包括子文件),
2. 然后将这些文件拷贝到一个新文件夹下。
作者:
黑马_位志国
时间:
2013-4-4 15:39
import java.io.*;
import java.util.*;
public class MoveFile{
private static ArrayList<File> al = new ArrayList<File>();
public static void main(String[] args) {
//将F:/java目录下的*。java文件和*。txt文件拷贝到F:/move目录下
moveFile("F:\\java", "F:\\move");
}
//将文件移动到指定的目录下
public static void moveFile(String src, String goal){
ArrayList<File> files = getFile(src);
BufferedReader bufr = null;
BufferedWriter bufw = null;
for(File file : files){
try {
bufr = new BufferedReader(new FileReader(file));
File f = new File(goal + "\\" + file.getName());
if(!f.exists())
f.createNewFile();
bufw = new BufferedWriter(new FileWriter(f));
String line = null;
while((line = bufr.readLine()) != null){
bufw.write(line);
bufw.newLine();
bufw.flush();
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
throw new RuntimeException("未找到源文件");
} catch (IOException e) {
// TODO Auto-generated catch block
throw new RuntimeException("拷贝失败");
}finally{
try {
if(bufw != null)
bufw.close();
if(bufr != null)
bufr.close();
} catch (IOException e) {
// TODO Auto-generated catch block
throw new RuntimeException("流资源关闭失败");
}
}
}
}
//获取一个目录下所有的文件和子文件,并且文件是*.java文件或者是*.txt文件
public static ArrayList<File> getFile(String src){
File f = new File(src);
File[] files = f.listFiles();
for(File file : files){
if(file.isFile()){
String fileName = file.getName();
if(fileName.endsWith(".java") || fileName.endsWith(".txt")){
al.add(file);
}
}else
if(file.isDirectory()){
getFile(file.getAbsolutePath());
}
}
return al;
}
}
作者:
黄玉昆
时间:
2013-4-4 16:50
如果仍有问题,请继续追问,如果问题已解决,请将分类改为已解决,谢谢
作者:
袁梦希
时间:
2013-4-4 18:21
黑马_位志国 发表于 2013-4-4 15:39
import java.io.*;
import java.util.*;
谢谢兄弟
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2