jak w java wypisac wszystkie pliki ktore znajduja sie na dysku np: podajemy katalog a program wypisze wszystkie pliki znajdujace sie w tym katalogu i jego podkatalogach.
juz mam :
import java.io.*;
public class ListDir
{
public static void main(String[] args)
{
String dirname = args.length > 0 ? args[0] : ".";
File f = new File(dirname);
if (f.isDirectory())
{
ListDir x = new ListDir(f);
}
else
System.out.println("file is not a directory: " + dirname);
}
public ListDir(File dir)
{
String dirname = dir.getAbsolutePath();
System.out.println("--------------------------");
System.out.println("Directory Name: " + dirname);
String[ ] files = dir.list();
for (int i=0; i < files.length; i++)
{
String filename = dirname + "/" + files[i];
File f = new File(filename);
if (!f.isDirectory())
{
System.out.println("<file> " + files[i]);
}
}
for (int i=0; i < files.length; i++)
{
String filename = dirname + "/" + files[i];
File f = new File(filename);
if (f.isDirectory())
{
System.out.println("<dir> " + files[i]);
ListDir x = new ListDir(f);
}
}
}
}
import java.io.*;
import javax.swing.*;
/**
* DirectoryTree.
* Rekurencyjny lister katalogów.
* 2006 by emix.
*
* [email protected]
*/
class DirectoryTree {
StringBuffer data = new StringBuffer();
String sciezka;
public DirectoryTree(String s)
{
sciezka = s;
}
public String toString()
{
rekur("", sciezka);
return data.toString();
}
public void rekur(String charr, String sciez)
{
String temp;
File fp = new File(sciez);
String[] subf = fp.list();
for (int i=0; i<subf.length; i++)
{
File tmpf = new File(sciez + "\\" + subf[i]);
if (!tmpf.isDirectory()) continue;
data.append(charr + "+---" + subf[i] + "\n");
// jezeli jestesmy w ostatnim
// subfolderze
if (i!=subf.length-1)
temp = "| ";
else
temp = " ";
rekur(charr + temp, sciez + "\\" + subf[i]);
}
}
public static void main(String[] args)
{
/*
DirectoryTree p = new DirectoryTree(
JOptionPane.showInputDialog("Enter dir's name")
);*/
DirectoryTree p = new DirectoryTree(".");
System.out.println(p);
System.exit(0);
}
}