Simples Programm dass mehrere Text Dokumente in einem bindet
Hallo zusammen,
ich brauche ein ganz einfaches Programm dass mehrere Text Dateien in einem Ordner (zum beispiel C:\Text) in ein neues Text Dokument schreibt im Order C:\Text\Final. Die Text Dateien sind ganz einfach strukturiert. Ich will diese Dateien in einer Datenbank importieren und es wäre viel einfacher eine große Datei zu importieren als 100 kleine (je 1 Kb). Vielen dank im voraus für jede Hilfe.
Viele Grüsse
Julia
ich brauche ein ganz einfaches Programm dass mehrere Text Dateien in einem Ordner (zum beispiel C:\Text) in ein neues Text Dokument schreibt im Order C:\Text\Final. Die Text Dateien sind ganz einfach strukturiert. Ich will diese Dateien in einer Datenbank importieren und es wäre viel einfacher eine große Datei zu importieren als 100 kleine (je 1 Kb). Vielen dank im voraus für jede Hilfe.
Viele Grüsse
Julia
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 117151
Url: https://administrator.de/contentid/117151
Ausgedruckt am: 25.11.2024 um 23:11 Uhr
9 Kommentare
Neuester Kommentar
Das müsste ganz einfach mit Batch gehen.
Erstma erstell eine leere Textdatei, dann schreib rein:
Das ganze dann Speichern unter -> meinprog.bat
Wichtig ist die endung .bat anstatt .txt, damit das Programm sich ausführen lässt.
... So wirklich gut ist das noch nicht, weil er keine neuen zeilen nach jeder datei macht.
Du müsstest also in am ende jeder Datei eine neue Zeile einfügen (Enter), falls dies noch nicht der fall ist.
Aber mit einem FOR-Befehl würde das irgendwie gehen.
Du kannst ja hier im Bereich Batch & Shell oder halt mit google dazu was suchen.
:Edit: bin irgendwie abgeschweift und hab spät abgeschickt, aber egal
Erstma erstell eine leere Textdatei, dann schreib rein:
@echo off
if not exist "C:\Text\" md "C:\Text\"
if not exist "C:\Text\Final\" md "C:\Text\Final\"
copy "C:\Text\*.*" "C:\Text\Final\Alles.txt"
Wichtig ist die endung .bat anstatt .txt, damit das Programm sich ausführen lässt.
... So wirklich gut ist das noch nicht, weil er keine neuen zeilen nach jeder datei macht.
Du müsstest also in am ende jeder Datei eine neue Zeile einfügen (Enter), falls dies noch nicht der fall ist.
Aber mit einem FOR-Befehl würde das irgendwie gehen.
Du kannst ja hier im Bereich Batch & Shell oder halt mit google dazu was suchen.
:Edit: bin irgendwie abgeschweift und hab spät abgeschickt, aber egal
@monoffel
Kurze Anmerkung zu den beiden "md"-Zeilen: Es genügt die zweite davon, da bei Bedarf automatisch die höher liegenden Ordnerebenen erstellt werden - zu Testzwecken könntest Du daher, falls es noch keinen Ordner "Test1" gibt, zB mit
alle "Test"-Ordner erstellen.
Grüße
bastla
Kurze Anmerkung zu den beiden "md"-Zeilen: Es genügt die zweite davon, da bei Bedarf automatisch die höher liegenden Ordnerebenen erstellt werden - zu Testzwecken könntest Du daher, falls es noch keinen Ordner "Test1" gibt, zB mit
md C:\Test1\Test2\Test3\Test4
Grüße
bastla
Ja irgendwie schon.
Theorethisch könnten die Beiden Ordner, aber auch in unterschiedlichen Verzeichenissen sein, weil das is ja nur ein Beispiel.
So wäre es auch noch einfacher.
Theorethisch könnten die Beiden Ordner, aber auch in unterschiedlichen Verzeichenissen sein, weil das is ja nur ein Beispiel.
So wäre es auch noch einfacher.
@echo off
set "eingabeordner=C:\Text\"
set "ausgabeordner=C:\Text\Final\"
if not exist "%eingabeordner%" md "%eingabeordner%"
if not exist "%ausgabeordner%" md "%ausgabeordner%"
copy "%eingabeordner%\*.*" "%ausgabeordner%\Alles.txt"
@monoffel
War ja auch nur als allgemeiner Hinweis gedacht - wenn es allerdings verschiedene Verzeichnisse wären, hätte es keinen Sinn, den Eingabeordner in Zeile 4 zu erstellen und dann in Zeile 6 aus dem eben erst erstellten Ordner Dateien kopieren zu wollen ...
... hinsichtlich der Prüfung des Ausgabeordners hast Du allerdings Recht.
Grüße
bastla
War ja auch nur als allgemeiner Hinweis gedacht - wenn es allerdings verschiedene Verzeichnisse wären, hätte es keinen Sinn, den Eingabeordner in Zeile 4 zu erstellen und dann in Zeile 6 aus dem eben erst erstellten Ordner Dateien kopieren zu wollen ...
... hinsichtlich der Prüfung des Ausgabeordners hast Du allerdings Recht.
Grüße
bastla
Hallo Praktikantin,
kuckst du hier.
http://de.wikibooks.org/wiki/Batch-Programmierung:_WebLinks
Gruß
primusvs
kuckst du hier.
http://de.wikibooks.org/wiki/Batch-Programmierung:_WebLinks
Gruß
primusvs
Hallo Praktikantin!
Noch eine Anmerkung: Je nachdem, ob die einzelnen Textdateien am Ende der letzten Zeile eine Zeilenschaltung enthalten, müsste ev anstelle von "Write" mit "WriteLine" geschrieben werden.
Grüße
bastla
Ich dachte ich muss ein kompliziertes VB Script schreiben....
Naja, sogar mit Prüfung des Zielordners dann nicht sooo kompliziert :Quelle = "C:\Test"
Typ = "txt"
Ziel = "C:\Test\Final"
Sammeldatei = "Gesamt.txt"
Set fso = CreateObject("Scripting.FileSystemObject")
If Not fso.FolderExists(Ziel) Then
WScript.Echo "Der Zielordner existiert nicht!"
WScript.Quit(1)
End If
Set Sammel = fso.OpenTextFile(Ziel & "\" & Sammeldatei, 2, True)
For Each Datei In fso.GetFolder(Quelle).Files
If LCase(fso.GetExtensionName(Datei.Name)) = LCase(Typ) Then
Sammel.Write Datei.OpenAsTextStream.ReadAll
End If
Next
Grüße
bastla