|
|
@ -0,0 +1,63 @@ |
|
|
|
package ListaDirectorio; |
|
|
|
|
|
|
|
import java.io.File; |
|
|
|
import java.util.Scanner; |
|
|
|
|
|
|
|
public class ListaDirectorio { |
|
|
|
|
|
|
|
/** Hacer programa que liste los directorios (carpetas), como un <ls dir> en Linux */ |
|
|
|
private static final Scanner lector = new Scanner(System.in); |
|
|
|
|
|
|
|
public static void main(String[] args) { |
|
|
|
|
|
|
|
System.out.println("> Introduzca el directorio a listar ... \n* Introduzca la ruta completa!"); |
|
|
|
String directory = lector.nextLine(); |
|
|
|
|
|
|
|
System.out.println("> Resultado ..."); |
|
|
|
System.out.println(directory); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* Visualizará/listará el contenido del directorio mostrando el tipo (f/d), el tamaño y los permisos de lectura y escritura. |
|
|
|
* @param directory |
|
|
|
* @return contenido e información del contenido |
|
|
|
*/ |
|
|
|
public static String printDirectoryContent(String directory) { |
|
|
|
|
|
|
|
StringBuilder info = new StringBuilder(); |
|
|
|
File file = new File(directory); |
|
|
|
|
|
|
|
if (file.exists() && file.isDirectory()) { |
|
|
|
|
|
|
|
File[] content = file.listFiles(); |
|
|
|
info.append("> Contenido del directorio:\n"); |
|
|
|
|
|
|
|
for (File f : content) { |
|
|
|
|
|
|
|
info.append("+ '" + f.getName() + "' "); |
|
|
|
|
|
|
|
info.append(f.isFile() ? "f" : "_"); |
|
|
|
info.append(f.isDirectory() ? "d" : "_"); |
|
|
|
|
|
|
|
info.append(" " + f.length() + " bytes "); |
|
|
|
info.append(f.canRead() ? "r" : "_"); |
|
|
|
info.append(f.canWrite() ? "w" : "_"); |
|
|
|
info.append(f.canExecute() ? "x" : "_"); |
|
|
|
|
|
|
|
info.append("\n"); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
info.append("- Ha surgido un problema..."); |
|
|
|
info.append("\n(i) -It exists: " + file.exists() + " -Is directory: " + file.isDirectory() + " -Length: " + file.length()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
return info.toString(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |