當前位置: 首頁>>代碼示例>>Java>>正文


Java FileUtil.listFiles方法代碼示例

本文整理匯總了Java中org.apache.hadoop.fs.FileUtil.listFiles方法的典型用法代碼示例。如果您正苦於以下問題:Java FileUtil.listFiles方法的具體用法?Java FileUtil.listFiles怎麽用?Java FileUtil.listFiles使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.apache.hadoop.fs.FileUtil的用法示例。


在下文中一共展示了FileUtil.listFiles方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: assertGlobEquals

import org.apache.hadoop.fs.FileUtil; //導入方法依賴的package包/類
/**
 * List all of the files in 'dir' that match the regex 'pattern'.
 * Then check that this list is identical to 'expectedMatches'.
 * @throws IOException if the dir is inaccessible
 */
public static void assertGlobEquals(File dir, String pattern,
    String ... expectedMatches) throws IOException {
  
  Set<String> found = Sets.newTreeSet();
  for (File f : FileUtil.listFiles(dir)) {
    if (f.getName().matches(pattern)) {
      found.add(f.getName());
    }
  }
  Set<String> expectedSet = Sets.newTreeSet(
      Arrays.asList(expectedMatches));
  Assert.assertEquals("Bad files matching " + pattern + " in " + dir,
      Joiner.on(",").join(expectedSet),
      Joiner.on(",").join(found));
}
 
開發者ID:nucypher,項目名稱:hadoop-oss,代碼行數:21,代碼來源:GenericTestUtils.java

示例2: hasSomeData

import org.apache.hadoop.fs.FileUtil; //導入方法依賴的package包/類
/**
 * @return true if the storage directory should prompt the user prior
 * to formatting (i.e if the directory appears to contain some data)
 * @throws IOException if the SD cannot be accessed due to an IO error
 */
@Override
public boolean hasSomeData() throws IOException {
  // Its alright for a dir not to exist, or to exist (properly accessible)
  // and be completely empty.
  if (!root.exists()) return false;
  
  if (!root.isDirectory()) {
    // a file where you expect a directory should not cause silent
    // formatting
    return true;
  }
  
  if (FileUtil.listFiles(root).length == 0) {
    // Empty dir can format without prompt.
    return false;
  }
  
  return true;
}
 
開發者ID:naver,項目名稱:hadoop,代碼行數:25,代碼來源:Storage.java

示例3: purgeMatching

import org.apache.hadoop.fs.FileUtil; //導入方法依賴的package包/類
/**
 * Purge files in the given directory which match any of the set of patterns.
 * The patterns must have a single numeric capture group which determines
 * the associated transaction ID of the file. Only those files for which
 * the transaction ID is less than the <code>minTxIdToKeep</code> parameter
 * are removed.
 */
private static void purgeMatching(File dir, List<Pattern> patterns,
    long minTxIdToKeep) throws IOException {

  for (File f : FileUtil.listFiles(dir)) {
    if (!f.isFile()) continue;
    
    for (Pattern p : patterns) {
      Matcher matcher = p.matcher(f.getName());
      if (matcher.matches()) {
        // This parsing will always succeed since the group(1) is
        // /\d+/ in the regex itself.
        long txid = Long.parseLong(matcher.group(1));
        if (txid < minTxIdToKeep) {
          LOG.info("Purging no-longer needed file " + txid);
          if (!f.delete()) {
            LOG.warn("Unable to delete no-longer-needed data " +
                f);
          }
          break;
        }
      }
    }
  }
}
 
開發者ID:naver,項目名稱:hadoop,代碼行數:32,代碼來源:JNStorage.java

示例4: delete

import org.apache.hadoop.fs.FileUtil; //導入方法依賴的package包/類
@Override
public boolean delete(String path, boolean recursive) throws IOException {
  File f = new File(path);
  if (f.isFile()) {
    return f.delete();
  } else if (!recursive && f.isDirectory() && (FileUtil.listFiles(f).length != 0)) {
    throw new IOException("Directory " + f.toString() + " is not empty");
  }
  return FileUtil.fullyDelete(f);
}
 
開發者ID:intel-hpdd,項目名稱:lustre-connector-for-hadoop,代碼行數:11,代碼來源:LustreFsJavaImpl.java

示例5: purgeLogsOlderThan

import org.apache.hadoop.fs.FileUtil; //導入方法依賴的package包/類
@Override
public void purgeLogsOlderThan(long minTxIdToKeep)
    throws IOException {
  LOG.info("Purging logs older than " + minTxIdToKeep);
  File[] files = FileUtil.listFiles(sd.getCurrentDir());
  List<EditLogFile> editLogs = matchEditLogs(files, true);
  for (EditLogFile log : editLogs) {
    if (log.getFirstTxId() < minTxIdToKeep &&
        log.getLastTxId() < minTxIdToKeep) {
      purger.purgeLog(log);
    }
  }
}
 
開發者ID:naver,項目名稱:hadoop,代碼行數:14,代碼來源:FileJournalManager.java

示例6: delete

import org.apache.hadoop.fs.FileUtil; //導入方法依賴的package包/類
@Override
public boolean delete(Path p, boolean recursive) throws IOException {
  if (LOG.isDebugEnabled()) {
    LOG.debug(String.format("EFS:delete: %s %b", p, recursive));
  }
  
  // The super delete uses the FileUtil.fullyDelete, 
  // but we cannot rely on that because we need to use the elevated 
  // operations to remove the files
  //
  File f = pathToFile(p);
  if (!f.exists()) {
    //no path, return false "nothing to delete"
    return false;
  }
  else if (f.isFile()) {
    return Native.Elevated.deleteFile(p);
  } 
  else if (f.isDirectory()) {
    
    // This is a best-effort attempt. There are race conditions in that
    // child files can be created/deleted after we snapped the list. 
    // No need to protect against that case.
    File[] files = FileUtil.listFiles(f);
    int childCount = files.length;
    
    if (recursive) {
      for(File child:files) {
        if (delete(new Path(child.getPath()), recursive)) {
          --childCount;
        }
      }
    }
    if (childCount == 0) {
      return Native.Elevated.deleteDirectory(p);
    } 
    else {
      throw new IOException("Directory " + f.toString() + " is not empty");
    }
  }
  else {
    // This can happen under race conditions if an external agent 
    // is messing with the file type between IFs
    throw new IOException("Path " + f.toString() + 
        " exists, but is neither a file nor a directory");
  }
}
 
開發者ID:naver,項目名稱:hadoop,代碼行數:48,代碼來源:WindowsSecureContainerExecutor.java


注:本文中的org.apache.hadoop.fs.FileUtil.listFiles方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。