java代码 读取一个文件夹下的所有文件夹及里面的文件。

爬虫爬下来一些分类的html文件,然后要把它们去除标签转生成新的txt文件,但是只会写处理一个文件夹下面的文件,它不会深入到文件夹里面的文件夹里的文件。各位大神能请教一下... 爬虫爬下来一些分类的html文件,然后要把它们去除标签转生成新的txt文件,但是只会写处理一个文件夹下面的文件,它不会深入到文件夹里面的文件夹里的文件。
各位大神能请教一下怎么弄吗?
或者能百度hi 我或者 Q我535623384 ,赐教一下啦!
展开
 我来答
紫薇参星
科技发烧友

2012-06-21 · 有一些普通的科技小锦囊
知道大有可为答主
回答量:5983
采纳率:92%
帮助的人:3592万
展开全部
我给你个例子,你把其中的路径File file = new File("c:\\tmp\\5");改成你的路径就行了。
public class Test2
{
public static void main(String[] args)
{
File file = new File("c:\\tmp\\5");
Test2 t = new Test2();
t.method(file);
}

public void method(File f)
{
File[] FList = f.listFiles();
for (int i = 0; i < FList.length; i++)
{
if (FList[i].isDirectory()==true)
{
method(FList[i]);
}
else
{
System.out.println(FList[i].getAbsolutePath());
}
}
}
}
追问
能在百度hi上讨论一下麽?hi你了……
追答
我也hi你了。上面的例子程序是一个简单的递归程序。
say1add1eq2
2012-06-21 · 超过33用户采纳过TA的回答
知道答主
回答量:111
采纳率:0%
帮助的人:78.6万
展开全部
package p;

import java.io.File;
import java.util.ArrayList;
import java.util.List;

public class 遍历文件 {

//上一个文件
String lastFile = "" ;
//没能得到的文件
List<String> errFile = new ArrayList<String>() ;
/**
* 递归遍历
*/
public void getFiles(File dir){
File[] fz = dir.listFiles() ;
if(fz == null){
errFile.add(lastFile) ; //这个文件不能读取(多少系统的什么文件夹)
return ;
}
for (int i = 0; i < fz.length; i++) {
if(fz[i].isDirectory()){//目录
lastFile = fz[i].getAbsolutePath() ; //保存这个是 可能无法对此文件操作
getFiles(fz[i]) ;
}else {
//这里是对 fz[i] 这个文件的处理
System.out.println(fz[i]);
}
}
}
//不能读取的文件
public void out(){
for (int i = 0; i < errFile.size(); i++) {
System.out.println(errFile.get(i));
}
}

public static void main(String[] args) {
遍历文件 aa = new 遍历文件();
aa.getFiles(new File("M:"));
System.out.println("_________________________");
aa.out() ;
}

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
baoer1127
2012-06-21 · TA获得超过926个赞
知道小有建树答主
回答量:939
采纳率:71%
帮助的人:337万
展开全部
你可是使用递归读取啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式