我的步骤如下:
1,给定一个入口的路径
2,判断这个路径,如果是文件则直接处理addFile(File);
   如果是目录,则继续搜索parseDir(File)
   y压缩文件,则,首先解压,然后当作特殊的目录来处理,parseArchive(File)
 这是递归的过程现在我已经可以处理文档了,但是处理目录的时候,当我获取目录下某个文件的hash值的时候,却出现了错误,cosole断报的错误是,NULLPOINTEXCEPTION;注:文档处理的时候也是需要计算md5的,计算方法是完全一样的,很疑惑,不知道为什么会出现这种错误,哪位高人指点我一下啊,我是菜鸟,要是帮我解决了,分不是问题啊,我可以另开帖子给分的

解决方案 »

  1.   

    :)先帮我看看再说啦
    public static DocumentRecord documentRecord(final File f) {
    log.debug("parsing " + f); if (f == null) {
    log.debug("file " + f + "not exist!");
    return null;
    } ParsedFileInfo fileinfo = getParsedFileInfo(f);
    if (fileinfo != null) {
    if (log.isDebugEnabled()) {
    log.debug("Creating new DocumentRecord with ParsedFileInfo: "
    + fileinfo);
    } UTF8 uri = new UTF8(ConvertUtils.URIToString(fileinfo.getUri()));
    UTF8 hash =new UTF8( FileUtils.getMD5Hash(f));//运行时候的出错位置 DocumentRecord dr = new DocumentRecord(uri, hash, -1,
    fileinfo.getModificationDate(), -1L);
    return dr;
    }
    return null;
    }大哥就帮帮我吧
      

  2.   

    我测试过了,如果入口是
    d:/tmp.txt 没问题
    d:/tmp/tmp.txt就没有办法解析文件的内容了