Here you can find the source of listChildren(Path directory)
Parameter | Description |
---|---|
directory | input Path, should be a directory |
Parameter | Description |
---|---|
IllegalArgumentException | if input Path is not a directory |
IOException | if an error occurs during directory scanning |
public static List<Path> listChildren(Path directory) throws IllegalArgumentException, IOException
//package com.java2s; /*/*from w w w . ja va 2s . com*/ * Geotoolkit.org - An Open Source Java GIS Toolkit * http://www.geotoolkit.org * * (C) 2008-2012, Open Source Geospatial Foundation (OSGeo) * (C) 2009-2012, Geomatys * * This library 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; * version 2.1 of the License. * * This library 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. */ import java.io.*; import java.nio.file.*; import java.util.*; public class Main { /** * Traverse a directory an return children files with depth 0. * Result of this method can result of an OutOfMemory if scanned * folder contains very large number of files. * * @param directory input Path, should be a directory * @return children Path * @throws IllegalArgumentException if input Path is not a directory * @throws IOException if an error occurs during directory scanning */ public static List<Path> listChildren(Path directory) throws IllegalArgumentException, IOException { return listChildren(directory, "*"); } /** * Traverse a directory an return children files with depth 0. * Result of this method can result of an OutOfMemory if scanned * folder contains very large number of files. * * @param directory input Path, should be a directory * @param glob glob filter * @return children Path * @throws IllegalArgumentException if input Path is not a directory * @throws IOException if an error occurs during directory scanning */ public static List<Path> listChildren(Path directory, String glob) throws IllegalArgumentException, IOException { if (!Files.isDirectory(directory)) { throw new IllegalArgumentException("Input Path is not a directory or doesn't exist"); } if (glob == null || glob.isEmpty()) { glob = "*"; } final List<Path> children = new LinkedList<>(); try (DirectoryStream<Path> stream = Files.newDirectoryStream(directory, glob)) { for (Path child : stream) { children.add(child); } } //asc sort Collections.sort(children); return children; } }