Thread Text-Datei in mehrere Dateien splitten (21 answers)
Opened by hybi at 2013-07-23 11:07

Gast hybi
 2013-07-23 11:07
#169018 #169018
Hallo zusammen,

ich habe eine TXT-Datei, die in mehrere Dateien aufgeteilt werden soll.
Die Einträge sind zeilenweise in der Datei runtergerattert, es sieht ungefähr so aus:

Jahrgang
Titel
Kurzbeschreibung
@@
Jahrgang
Titel
Kurzbeschreibung


Nun soll an der Stelle @@ gesplittet und die Einträge getrennt in einzelne Dateien gespeichert werden. Ich habe ein Script gefunden was jemandem bei einem ähnlichen Vorhaben geholfen zu haben scheint:

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/usr/bin/perl
use warnings;
use strict;

open (FILE, "<wuw.txt");
my @raw_array=<FILE>;
close(FILE);


my $i=0;
for (@raw_array) {

    # Zeilen in einen neuen array packen
    push (my @print_to_file, $_);

    # Wenn die Zeile @@ enthält
    if (/@@/) {

       # erstelle eine datei die $i.txt heißt
       open (NEWFILE, ">$i.txt");

       # schreib die neue array in die neue datei
       foreach (@print_to_file) {print;}

       #datei zu
       close(NEWFILE);

       # neue array entleeren
       @print_to_file="";

       # $i erhöhen
       $i++;

     } #ende if

} #ende for


Bei mir werden zwar mehrere Dateien erstellt, die bleiben allerdings allesamt leer.

Bin perl-unerfahren, sehe das Problem nicht sofort auf den ersten Blick.
Muss noch etwas angepasst werden?
Danke im Voraus!

modedit Editiert von GwenDragon: Titel korrigiert, Code eingerückt
Last edited: 2013-07-23 11:31:52 +0200 (CEST)

View full thread Text-Datei in mehrere Dateien splitten