Java Folder Read getFiles(final File root, final String[] endings)

Here you can find the source of getFiles(final File root, final String[] endings)

Description

get Files

License

Open Source License

Declaration

public static Collection<File> getFiles(final File root, final String[] endings) 

Method Source Code


//package com.java2s;
/*//  w ww  .  j  av a 2  s. co  m
 * Copyright (C) 2015 Daniel Dietsch (dietsch@informatik.uni-freiburg.de)
 * Copyright (C) 2015 University of Freiburg
 * 
 * This file is part of the ULTIMATE licence-manager.
 * 
 * The ULTIMATE licence-manager is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published
 * by the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * The ULTIMATE licence-manager is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Lesser General Public License for more details.
 * 
 * You should have received a copy of the GNU Lesser General Public License
 * along with the ULTIMATE licence-manager. If not, see <http://www.gnu.org/licenses/>.
 * 
 * Additional permission under GNU GPL version 3 section 7:
 * If you modify the ULTIMATE licence-manager, or any covered work, by linking
 * or combining it with Eclipse RCP (or a modified version of Eclipse RCP), 
 * containing parts covered by the terms of the Eclipse Public License, the 
 * licensors of the ULTIMATE licence-manager grant you additional permission 
 * to convey the resulting work.
 */

import java.io.File;

import java.util.ArrayList;
import java.util.Collection;

public class Main {
    public static Collection<File> getFiles(final File root, final String[] endings) {
        final ArrayList<File> rtr = new ArrayList<File>();

        if (root.isFile()) {
            for (final String s : endings) {
                if (root.getAbsolutePath().endsWith(s)) {
                    rtr.add(root);
                    break;
                }
            }
            return rtr;
        }

        final File[] list = root.listFiles();

        if (list == null) {
            return rtr;
        }

        for (final File f : list) {
            if (f.isDirectory()) {
                rtr.addAll(getFiles(f, endings));
            } else {
                if (endings == null || endings.length == 0) {
                    rtr.add(f);
                } else {
                    for (final String s : endings) {
                        if (f.getAbsolutePath().endsWith(s)) {
                            rtr.add(f);
                            break;
                        }
                    }
                }
            }
        }
        return rtr;
    }
}

Related

  1. getFiles(File folder)
  2. getFiles(File folder)
  3. getFiles(File indir)
  4. getFiles(File... repertoires)
  5. getFiles(final File dir)
  6. getFiles(final String classPath)
  7. getFiles(final String path, Vector files)
  8. getFiles(List filepaths)
  9. getFiles(List filePaths)