怎样读一个文件夹中的所有文件?

nevil 2003-08-21 09:58:14
如何才能依次逐个读一个文件夹中的所有文件?
...全文
64 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
javagems 2003-08-23
  • 打赏
  • 举报
回复
刚写了一段代码,用语拷贝一个文件夹里的所有文件,包括文件里面的内容
package copyfile;

/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2003</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/
import java.io.*;
public class CopyDir {
public CopyDir() {
}
//构造函数,用于输入两个目录。
public CopyDir(String source,String dest){
createDir(new File(source),new File(dest));
System.out.println(new File(dest).getPath()+File.separator);
}
//
public void createDir(File src_path,File dest_path){
File[] files = src_path.listFiles();
for (int i = 0; i < files.length; i++) {
File src = files[i];
File dest = new File(dest_path.getPath() + File.separator +
files[i].getName());

if (!src.isDirectory())
copyFile(src, dest);
//查找是不是有下一个文件夹,有的话,进行循环复制
if (src.isDirectory()){
File dest_filepath = new File(dest_path+"\\"+src.getName());

dest_filepath.mkdirs();

String dpath = dest_path+"\\"+src.getName();
String spath = src_path+"\\"+src.getName();

CopyDir dir = new CopyDir(spath, dpath);

}
}
}
//用于目录文件的拷贝
public void copyFile(File src,File dest){
try{
System.out.println(src.getAbsoluteFile()+" -> "+dest.getAbsoluteFile());
FileInputStream in = new FileInputStream(src);
FileOutputStream out = new FileOutputStream(dest);
byte[] buffer = new byte[1024];
int length = -1;
while((length=in.read(buffer))!=-1){
out.write(buffer,0,length);
}
out.flush();
out.close();
in.close();
System.out.println("文件复制成功!");
}catch(Exception e){
System.out.println("文件复制失败!");
}
}


}

希望对你有用
star821116 2003-08-22
  • 打赏
  • 举报
回复
先把一个目录list出来然后再循环读呗
felic 2003-08-22
  • 打赏
  • 举报
回复
public void controlFile(File formFolder){
//File formFolder = new File("c:\")
File[] fileList = fromFolder.listFiles();
for (int i = 0; i < fileList.length; i++) {

if (tempFile.isFile()) {
//对该文件进行操作
} else {
controlFile(tempFile);
}

}
}
hesi726 2003-08-22
  • 打赏
  • 举报
回复
如下:
我可能记错了一些API,检查一下! -)
File file = new File("/mnt/");
File[] files = file.listFiles();
for (int i=0;i<files.length;i++)
{
}
fpwang 2003-08-21
  • 打赏
  • 举报
回复
学习

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧