fixle: eingerückte Zeilen im array

hi

Ich habe ein Array das ich in eine textdatei schreibe mit folgenden Befehl:
print FILE "@array";
im nächsten Schritt wird das gleiche Array wieder in die Datei überschrieben und eine zusätzliche Zeile angehängt mit
print FILE "@array";
print FILE "$Zeichenkette";

nun kommt mein Problem
mit jedemmal wo ich das ausführe rücken ein paar der oberen EInträge in der Textdatei weiter nach rechts. Etwa so:
Hallo:blaa:blubb:535:nix
gg:hh:97h:iuhöjn:ajhd
   jökl:uhD:LOSH:kjökls:alk
   ksöjk:ohjsfö:saj:sölkj:södkjf
  kjfksj:ösjf:slkjfl:skjh:klsjf
 sdkfäö:slökj:sölkjf:sköljf
skjöf:sölfkj:isj:sölf:dsfkö

dadurch werden mir beim auslesen immer die ersten Werte verfälscht. Kann mir jemand sagen wie ich das verhindern kann ?

  1. Ich habe ein Array das ich in eine textdatei schreibe mit folgenden Befehl:
    print FILE "@array";
    im nächsten Schritt wird das gleiche Array wieder in die Datei überschrieben und eine zusätzliche Zeile angehängt mit
    print FILE "@array";

    Das ist erstmal ein unperformanter Mist, einen Array zu stringfizieren.
    Dein Listenseparator wird dabei zum Leerzeichen.

    print join("\n", @array), "\n";
    dürfte wohl eher das intendierte sein, was bidingt

    print FILE $Zeichenkette, "\n";

    Da gibt es noch viele andere Wege.

    z.B.

    foreach (@array, $string){
     print $_, "\n";
    }

    mfg Beat

    --
    Woran ich arbeite:
    X-Torah
       <°)))o><                      ><o(((°>o
  2. Kurtz gegrüßt

    ähm .. du willst immer eine Zeile in einer Datei hinzufügen und liest dafür die Datei jedesmal wieder neu ein???

    Grüße
     Kurt