Re: Anzahl Dateien in einem Verzeichnis
- From: Heiner Kücker <mail@xxxxxxxxxxxxxxxx>
- Date: Wed, 3 Dec 2008 14:02:51 +0100
joe schrieb
Ich benötige also eine Möglichkeit herauszubekommen, ob ein
Verzeichnis
mehr als X Dateien/Unterverzeichnisse enthält.
#File.listFiles().length geht natuerlich nicht.
Nach Deiner obigen Beschreibung wäre das korrekt.
Scheinbar meinst Du die Anzhal der Dateien rekursiv.
Was also tun?
Schreibe eine rekursive Methode:
------------------------------------------------------------
import java.io.File;
/**
* Klasse zum rekursiven Zählen
* der Dateien und Unterverzeichnisse
* unter einem bestimmten Verzeichniss.
*
* @author Heiner Kücker
*/
public class RecursivFileCount
{
/**
* Main.
*
* @param args Kommandozeilenparameter
*/
public static void main(
final String[] args)
{
final FileAndFolderCountVo fileAndFolderCountVo =
recursivFileCount(
new File(
"???" ) );
System.out.println(
"Anzahl Verzeichnisse: " +
fileAndFolderCountVo.folderCount );
System.out.println(
"Anzahl Dateien: " +
fileAndFolderCountVo.fileCount );
}
/**
* Rekursives Zählen Dateien und Verzeichnisse.
*
* @param folderToCheck Verzeichniss-File-Objekt, in welchem die
* Dateien und Verzeichnisse gezählt werden sollen
* @@return Value-Objekt für die Anzahl
* Dateien und Verzeichnisse
*/
private static FileAndFolderCountVo recursivFileCount(
final File folderToCheck )
{
final FileAndFolderCountVo fileAndFolderCountVo =
new FileAndFolderCountVo();
innerRecursivFileCount(
folderToCheck ,
fileAndFolderCountVo );
return fileAndFolderCountVo;
}
/**
* Rekursives Zählen Dateien und Verzeichnisse.
*
* @param folderToCheck Verzeichniss-File-Objekt,
* in welchem die
* Dateien und Verzeichnisse
* gezählt werden sollen
* @param fileAndFolderCountVo
* Value-Objekt für die Anzahl
* Dateien und Verzeichnisse
*/
private static void innerRecursivFileCount(
final File folderToCheck ,
final FileAndFolderCountVo fileAndFolderCountVo )
{
System.out.println( folderToCheck );
final File[] fileArr =
folderToCheck.listFiles();
for (int i = 0; i < fileArr.length; i++)
{
final File file = fileArr[i];
if ( file.isDirectory() )
{
fileAndFolderCountVo.folderCount++;
innerRecursivFileCount(
file ,
fileAndFolderCountVo );
}
else
{
fileAndFolderCountVo.fileCount++;
}
}
}
/**
* Value-Objekt-Klasse für die Anzahl
* Dateien und Verzeichnisse.
*/
public static class FileAndFolderCountVo
{
/**
* Anzahl Dateien.
*/
public int fileCount;
/**
* Anzahl Verzeichnisse.
*/
public int folderCount;
}
}
------------------------------------------------------------
--
Heiner Kücker
http://www.heinerkuecker.de
http://www.avon-beratung-terhorst.de
.
- Follow-Ups:
- Re: Anzahl Dateien in einem Verzeichnis
- From: Achim Peters
- Re: Anzahl Dateien in einem Verzeichnis
- From: joe
- Re: Anzahl Dateien in einem Verzeichnis
- References:
- Anzahl Dateien in einem Verzeichnis
- From: joe
- Anzahl Dateien in einem Verzeichnis
- Prev by Date: Re: Anzahl Dateien in einem Verzeichnis
- Next by Date: Re: Anzahl Dateien in einem Verzeichnis
- Previous by thread: Re: Anzahl Dateien in einem Verzeichnis
- Next by thread: Re: Anzahl Dateien in einem Verzeichnis
- Index(es):
Relevant Pages
|