Browse Source

changes

master
michael 2 years ago
commit
a3bb832596
8 changed files with 126 additions and 0 deletions
  1. +10
    -0
      .classpath
  2. +17
    -0
      .project
  3. +2
    -0
      .settings/org.eclipse.core.resources.prefs
  4. +14
    -0
      .settings/org.eclipse.jdt.core.prefs
  5. BIN
      bin/listarDirectorioTree/tree.class
  6. BIN
      bin/module-info.class
  7. +74
    -0
      src/listarDirectorioTree/tree.java
  8. +9
    -0
      src/module-info.java

+ 10
- 0
.classpath View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-17">
<attributes>
<attribute name="module" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="src" path="src"/>
<classpathentry kind="output" path="bin"/>
</classpath>

+ 17
- 0
.project View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>listarDirectorioTree</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>

+ 2
- 0
.settings/org.eclipse.core.resources.prefs View File

@ -0,0 +1,2 @@
eclipse.preferences.version=1
encoding/<project>=UTF-8

+ 14
- 0
.settings/org.eclipse.jdt.core.prefs View File

@ -0,0 +1,14 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=17
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=17
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
org.eclipse.jdt.core.compiler.release=enabled
org.eclipse.jdt.core.compiler.source=17

BIN
bin/listarDirectorioTree/tree.class View File


BIN
bin/module-info.class View File


+ 74
- 0
src/listarDirectorioTree/tree.java View File

@ -0,0 +1,74 @@
package listarDirectorioTree;
import java.io.File;
import java.util.Iterator;
public class tree {
public static void main(String[] args) {
String path = "/home/michael/Downloads";
File f = new File(path);
System.out.println(printDirectoryTree(f));
}
//Print Tree
public static String printDirectoryTree(File directorio) {
if(!directorio.isDirectory()) {
throw new IllegalArgumentException("No es un directorio");
}
int indent = 0;
StringBuilder sb = new StringBuilder();
printDirectoryTree(directorio, indent, sb);
return sb.toString();
}
//
private static void printDirectoryTree(File directorio, int indent, StringBuilder sb) {
if(!directorio.isDirectory()) {
throw new IllegalArgumentException("No es un directorio");
}
sb.append(getIndentString(indent));sb.append("+--");sb.append(directorio.getName());sb.append("/");sb.append("\n");
for (File fichero : directorio.listFiles()) {
if(fichero.isDirectory()) {
printDirectoryTree(fichero, indent + 1, sb);
}else {
printFichero(fichero,indent + 1 , sb);
}
}
}
// Por un subdirectorio o fichero que no haya ponemos un espacio (indent)
// Por un subdirectorio o fichero ponermos un +--
// Al final damos un espacio con /n
private static void printFichero(File fichero,int indent, StringBuilder sb) {
sb.append(getIndentString(indent));sb.append("+--");sb.append(fichero.getName());sb.append("\n");
}
//Dar espacio
private static String getIndentString(int indent ) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < indent; i++) {
sb.append("| ");
}
return sb.toString();
}
}

+ 9
- 0
src/module-info.java View File

@ -0,0 +1,9 @@
/**
*
*/
/**
* @author michael
*
*/
module listarDirectorioTree {
}

Loading…
Cancel
Save