Java网络爬虫crawler4j学习笔记<3> IO类
2016-11-08 09:55
330 查看
源代码
package edu.uci.ics.crawler4j.util; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.io.File; public class IO { //日志记录对象 private static Logger logger = LoggerFactory.getLogger(IO.class); public static boolean deleteFolder(File folder) { // 删除目录,并判断执行删除操作后目录是否存在 return deleteFolderContents(folder) && folder.delete(); } // 使用递归的方法删除一个目录及其下的所有子目录及文件 public static boolean deleteFolderContents(File folder) { logger.debug("Deleting content of: " + folder.getAbsolutePath()); File[] files = folder.listFiles(); for (File file : files) { // 如果是文件,则直接删除 if (file.isFile()) { if (!file.delete()) { return false; } } else { // 如果是目录,则对目录递归执行deleteFolderContents操作 if (!deleteFolder(file)) { return false; } } } // 删除完毕,返回true return true; } }
代码分析
crawler4j项目中util包下的IO类只包含一个功能,删除某个目录,使用的是递归删除的方法。在实际运行过程中,主要用于在爬虫启动初始化配置阶段,清空一个目录,用于存放db数据文件。
相关文章推荐
- Java网络爬虫crawler4j学习笔记<5> TLDList类
- Java网络爬虫crawler4j学习笔记<13> AuthInfo类
- Java网络爬虫crawler4j学习笔记<7> UrlResolver类
- Java网络爬虫crawler4j学习笔记<19> SAX解析工具类
- Java网络爬虫crawler4j学习笔记<24> PageFetchResult类
- Java网络爬虫crawler4j学习笔记<9> RuleSet类
- Java网络爬虫crawler4j学习笔记<20> 网页内容转码解析
- Java网络爬虫crawler4j学习笔记<15> FormAuthInfo类
- Java网络爬虫crawler4j学习笔记<2> Util类
- Java网络爬虫crawler4j学习笔记<12> RobotstxtParser类
- Java网络爬虫crawler4j学习笔记<17> CrawlConfig类
- Java网络爬虫crawler4j学习笔记<18> Configurable类
- Java网络爬虫crawler4j学习笔记<22> Parser 类
- Java网络爬虫crawler4j学习笔记<16> exceptions
- Java网络爬虫crawler4j学习笔记<14> BasicAuthInfo类
- Java网络爬虫crawler4j学习笔记<8> URLCanonicalizer类
- Java网络爬虫crawler4j学习笔记<4> Net类
- Java网络爬虫crawler4j学习笔记<21> Page 类
- Java网络爬虫crawler4j学习笔记<1>入门
- java网络爬虫——获取页面的所有超链接的内容