Ordner kopieren

M

MotheBend

Mitglied
Hey Leute.
Ich bin gerade dabei ein Programm zu schreiben, welches von einer Festplatte auf Ordnern einen bestimmten Ordner kopiert.
Es funktioniert ziemlich gut, jedoch nur wenn in jedem Ordner auch der gesucht Ordner vorhanden ist. Sobald das Programm einen Ordner prüf, in dem dies nicht der Fall ist, spinnt es komplett rum und kopiert falsche Inhalte etc. Der Code ist ziemlich kompliziert geschrieben und wenn jemand möglichkeiten findet den Code zu kürzen bitte auch schreiben.
Hier der Code:

Java:
package defaultP;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;

public class Kopieren {  
   
    static File le = new File("C:\\Aufträge");
    static File[] Filees = le.listFiles();
    static int max = Filees.length;
   
    public static int or = 0;
   
    public static void main(String[] args) throws FileNotFoundException, IOException {

        File ziel = new File("C:\\Erledigt");
       
        searchFile(le,"Planen");
       
    }
       
   
    public static File zielOrdner(File dir, int or) {
        File[] filesZ = dir.listFiles();
        return filesZ[or];
    }
   
    public static void searchFile(File dir, String find) {
        File[] files = dir.listFiles();
            for (int i = 0; i < files.length; i++) {
                if (files[i].getName().equalsIgnoreCase(find)) {
                    File f = new File(files[i].getAbsolutePath());
                    try {
                        File ziel = new File("C:\\Erledigt"+zielOrdner(le,or).getName());
                        System.out.println(zielOrdner(le,or).getName());
                        if(or<max) {
                            or++;
                            }
                        copyDir(f,ziel);
                    } catch (FileNotFoundException e) {

                        e.printStackTrace();
                    } catch (IOException e) {

                        e.printStackTrace();
                    }
                }
                else if (files[i].isDirectory()) {
                   
                    searchFile(files[i], find);

                }
            }
        }
   
    public static void copyDir(File quelle, File ziel) throws FileNotFoundException, IOException {
       
        File[] files = quelle.listFiles();
        File newFile = null;
        ziel.mkdirs();    
            for (int i = 0; i < files.length; i++) {
                    newFile = new File(ziel.getAbsolutePath() + System.getProperty("file.separator") + files[i].getName());
                if (files[i].isDirectory()) {
                    copyDir(files[i], newFile);
                }
                else {
                    copyFile(files[i], newFile);
                }
            }
    }
   
    public static void copyFile(File file, File ziel) throws FileNotFoundException, IOException {
       
        BufferedInputStream in = new BufferedInputStream(new FileInputStream(file));
        BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(ziel, true));
        int bytes = 0;
        while ((bytes = in.read()) != -1) {
            out.write(bytes);
        }
        in.close();
        out.close();
    }


}

Erklärung im Detail:
Das Programm sollte zuerst in den Ordner Auftäge gehen. In diesem Ordner Befinden sich von A-Z Ordner mit dem Namen der Kunden. Danach geht es nach der Reihe in den Ordner der Kunden rein. Dort befinden sich dann wieder Ordner. Und danach sucht er alle Ordner durch bist er den Ordner "Planen" gefunden hat. Und den kopiert er dann in den Ordner "Erledigt" mit dem Namen des jeweiligen Kunden davor. Wie gesagt, es funktioniert, solange jeder Kundenordner "Planen" beinhaltet.
Was mache ich falsch?
PS: Ich weiß das ich gerade 100 mal Ordner geschrieben habe, hatte nur keine Lust mir da immer was einfallen zu lassen. :D
 
VfL_Freak

VfL_Freak

Top Contributor
Moin,

da dein Text nur schwer zu lesen/verstehen ist, wäre es vielleicht hilfreich, wenn Du ein Bildchen malen würdest!
Ich habe offen gestanden keinen Plan, wann und wohin Du gehen willst, was Du genau prüfen willst und was wohin kopieren ...

VG Klaus
 
M

MotheBend

Mitglied
Moin,

da dein Text nur schwer zu lesen/verstehen ist, wäre es vielleicht hilfreich, wenn Du ein Bildchen malen würdest!
Ich habe offen gestanden keinen Plan, wann und wohin Du gehen willst, was Du genau prüfen willst und was wohin kopieren ...

VG Klaus

Du musst dir vorstellen ich habe einen Ordner, in dem noch mehr Unterordner sind. Alle diese sind mit dem Name verschiedener Kunden Beschriftet. Also der erste Unterordner heißt Andreas Mustermann, der zweit Bernd Test, dritte Charlie Charles etc. (Namen sind zu Veranschaulichung erfunden worden). Und in diese Unterornder sind nochmal Ordner drinnen, die bei allen ziemlich identisch sind. Also der erste Ordner in Andreas Mustermann heißt Rechnungen, der zweite Persönliche Daten etc. Das ist bei allen ordneren dann gleich. Und was ich jetzt will ist, dass von alle dieser Kundenordner der Ordner Persönliche_Daten in einem anderen Ordner kopiert wird.
 
VfL_Freak

VfL_Freak

Top Contributor
Moin,

ist nur bedingt klarer 🤪

Und was ich jetzt will ist, dass von alle dieser Kundenordner der Ordner Persönliche_Daten in einem anderen Ordner kopiert wird.
meinst Du wirklich: ALLE Ordner in EINEN anderen (oder in jeweils einen anderen)??

Alle in EINEN wird kaum gehen, wenn die Unterordner gleich heißen!
Andernfalls benötigst Du eine Zuordnung: welcher Kundenunterordner --> wohin/in welchen anderen
Habe aber keinen Plan, wie wir dabei helfen können ...

VG Klaus
 
M

MotheBend

Mitglied
Moin,

ist nur bedingt klarer 🤪


meinst Du wirklich: ALLE Ordner in EINEN anderen (oder in jeweils einen anderen)??

Alle in EINEN wird kaum gehen, wenn die Unterordner gleich heißen!
Andernfalls benötigst Du eine Zuordnung: welcher Kundenunterordner --> wohin/in welchen anderen
Habe aber keinen Plan, wie wir dabei helfen können ...

VG Klaus

Nein, nicht alle in einen Ordner. Ich versuche das jetzt einfach mal anhand eines Beispiels zu erklären.
Die Datei C:\Kunden\Max Mustermann\Persoenliche_Daten sollte in den Ordner C:\Erledigt verschoben werden. Dabei sollte dann der Ordner mit dem Namen des Kunden auch erstellt werden. Der Pfad sollte dann quasi so ausschauen: C:\Erledigt\Max Mustermann\Persoenliche_Daten.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
L File beim Kopieren in einen anderen Ordner umbenennen Allgemeine Java-Themen 6
D Kopieren von Dateien aus einem Ordner in einen anderen Allgemeine Java-Themen 6
X Dateien von der Jar zum Ordner kopieren. Allgemeine Java-Themen 4
K NetBeans Ordner bei 'Clean&Build' automatisch in dist Verzeichnis kopieren Allgemeine Java-Themen 0
T Ordner samt Dateien kopieren Allgemeine Java-Themen 11
M Pakete in Ordner Kopieren Allgemeine Java-Themen 7
I Java Ordner kopieren [Error] Allgemeine Java-Themen 6
E Ordner rekursiv kopieren Allgemeine Java-Themen 8
Zrebna FileUtils.cleanDirectory() - aber einen sub-Ordner "verschonen" Allgemeine Java-Themen 1
B Datei/Ordner auf Server zugreifen/erstellen Allgemeine Java-Themen 2
I Klassen aus Jar-Dateien aus anderem Ordner laden Allgemeine Java-Themen 3
B Dateien / Bilder von "webapp" Ordner bekommen? Allgemeine Java-Themen 1
F Registry Ordner durchlaufen Allgemeine Java-Themen 1
Drachenbauer Wie sorge ich dafür, dass mein Spiel die ini-Datei in der Resourcen-ordner des Projektes schreibt? Allgemeine Java-Themen 5
M Key-File im selben Ordner speichern? Allgemeine Java-Themen 18
R Setting Ordner fehlt Allgemeine Java-Themen 1
J Ordner und Datei Struktur einer War Datei Allgemeine Java-Themen 1
K getResource guckt im Target-Ordner...? Allgemeine Java-Themen 2
P Zum src Ordner einen Projektes navigieren Allgemeine Java-Themen 8
D Ordner commiten mit SvnKit Allgemeine Java-Themen 0
U javax.mail.Folder.list() zeigt nicht alle Ordner Allgemeine Java-Themen 5
I nach Image Load in ListView, kann Ordner nicht mehr gelöscht werden Allgemeine Java-Themen 1
P JDK installieren Kann man die Ordner in C:\Users\*\AppData\LocalLow\Sun\Java\.... löschen? Allgemeine Java-Themen 3
Ananaskirsche Input/Output Dateien im Ordner Allgemeine Java-Themen 8
A Input/Output Liste der Dateien in einem Ordner in einer Jar Datei erhalten Allgemeine Java-Themen 11
D Ordner auf Desktop erstellen(Pc unabhängig) Allgemeine Java-Themen 5
T Datei Ordner in Binär-Zahlenkette umwandeln Allgemeine Java-Themen 11
M JavaMail Spam-Ordner Allgemeine Java-Themen 2
B Dateien verschwinden aus bin Ordner?! Allgemeine Java-Themen 5
Minonos Einem Programm Zugriff auf bestimmte Ordner geben Allgemeine Java-Themen 5
P Ordner und Unterordner rückwärts durchsuchen Allgemeine Java-Themen 3
B Swing In JAR Ordner durchsuchen Allgemeine Java-Themen 2
B Ordner öffnen mittels Java in Linux-Umgebung Allgemeine Java-Themen 7
H Ordner in Zip integrieren Allgemeine Java-Themen 7
P Input/Output Ordner löschen --> geht nicht Datei --> Ja Allgemeine Java-Themen 6
S Dateien aus src-Ordner lesen Allgemeine Java-Themen 3
E nach dem Ordner suchen, wo .jar datei sich befindet Allgemeine Java-Themen 17
Developer_X Java FTP - Ordner auf Server erstellen Allgemeine Java-Themen 7
S Zugriffschutz auf Ordner Allgemeine Java-Themen 5
E ordner rekursiv durchsuchen Allgemeine Java-Themen 6
J Ordner im Archiv (jar) auslesen Allgemeine Java-Themen 12
P Datei aus Ordner wird nicht gelesen Allgemeine Java-Themen 2
4 Java Ordner Allgemeine Java-Themen 27
S auf freigebene Ordner zugreifen Allgemeine Java-Themen 6
F Ordner auslesen und in Editor ausgeben Allgemeine Java-Themen 7
L Ordner in ZipDatei erstellen Allgemeine Java-Themen 3
V Der Ordner von Java ist gelöscht und ich kann es nicht neu instalieren! Allgemeine Java-Themen 2
S Ordner wechseln wie bei chdir Allgemeine Java-Themen 6
D Ordner Verpfadung Allgemeine Java-Themen 19
B ProcessBuilder: kann Ordner im home nicht finden Allgemeine Java-Themen 2
N Dateien in Ordner einsortieren Allgemeine Java-Themen 11
G Ordner für Dateien finden Allgemeine Java-Themen 3
G Globalen Programm-Ordner herausfinden Allgemeine Java-Themen 7
K settings.properties in den src-ordner schreiben Allgemeine Java-Themen 2
D Ordner mit *.properties in classpath ? Allgemeine Java-Themen 5
D eclipse: Zugriff auf Ordner per code Allgemeine Java-Themen 4
S Einen Ordner zurück von der JarDatei Allgemeine Java-Themen 6
G Programm ausführen, sobald Ordner geöffnet? Allgemeine Java-Themen 21
MQue Ordner anlegen Allgemeine Java-Themen 7
B ZIP - Problem mit dem ersten Ordner Allgemeine Java-Themen 2
M JFileChooser: Ordner anlegen Allgemeine Java-Themen 3
J Verschieben ganzer Dateien (und Ordner) Allgemeine Java-Themen 3
Q ||| Nur Dateien einlesen ohne Ordner. Allgemeine Java-Themen 6
I Diverse Files aus Ordner auslesen Allgemeine Java-Themen 10
M Ordner nach neuester Datei durchsuchen Allgemeine Java-Themen 4
D Dateien und ordner ausgabe Allgemeine Java-Themen 5
G Subclipse + svn:ignore - Ordner manuel ignorieren? Allgemeine Java-Themen 2
Y Ordner löschen Allgemeine Java-Themen 2
D Auf Laufwerk bzw. Ordner auf einem Server zugreifen Allgemeine Java-Themen 7
T Ordner überwachen Allgemeine Java-Themen 6
RawBit Ordner in Zip laden Allgemeine Java-Themen 21
D Linux Link wird als Ordner interpretiert? Allgemeine Java-Themen 2
A Alle Ordner durchsuchen und Dateien finden Allgemeine Java-Themen 2
F Alle Files im Ordner nach Dateinamen durchsuchen Allgemeine Java-Themen 28
F Dateien in einem Ordner zählen Allgemeine Java-Themen 15
H Klassen aus einem Ordner zur Laufzeit laden. Allgemeine Java-Themen 6
André B. Sucher erfasst nur Ordner Allgemeine Java-Themen 10
M ganzen Ordner mit URL angeben Allgemeine Java-Themen 4
K Ordner/Dateistruktur in Objekten nachbilden Allgemeine Java-Themen 6
N Inhalte aller Txts in einem Ordner Addieren Allgemeine Java-Themen 5
N Alledateien in einem Ordner in ein Vector speichern Allgemeine Java-Themen 19
F Ordner erstellen Allgemeine Java-Themen 3
M Bilder-Ordner kann im JAR-File nicht gefunden werden Allgemeine Java-Themen 15
B dynamisches Laden aller Klassen in einem Ordner ?? Allgemeine Java-Themen 5
S Referenzdatentyp kopieren Allgemeine Java-Themen 5
I Wie Vektor-Grafik in die Zwischenablage kopieren? Allgemeine Java-Themen 2
J Gebautes Jar per Maven in einen Docker Container kopieren Allgemeine Java-Themen 0
M Dateien schneller kopieren Allgemeine Java-Themen 1
M Dateien nach kopieren vergleichen Allgemeine Java-Themen 9
B In zwischenablage kopieren Allgemeine Java-Themen 2
F Datentypen Kopieren von Datentypen Allgemeine Java-Themen 10
K JAR Datei Corrupt nach Kopieren Allgemeine Java-Themen 4
A Bestimmte Inhalte aus ArrayList 1 in ArrayList 2 kopieren Allgemeine Java-Themen 6
N String ins Clipboard kopieren ohne makieren. Allgemeine Java-Themen 12
J Umwandeln von URL zu File und danach kopieren geht nicht Allgemeine Java-Themen 1
F Java moved Files statt sie zu kopieren Allgemeine Java-Themen 12
J PDF-Datei aus JAR-Archiv in Dateisystem kopieren Allgemeine Java-Themen 1
S Einen übergebenen String kopieren Allgemeine Java-Themen 3
S in Zip kopieren -- Backup-Programm Allgemeine Java-Themen 9
P Vectorelemente in einen anderen Vector kopieren Allgemeine Java-Themen 12

Ähnliche Java Themen

Anzeige

Neue Themen


Oben