Dateizeile löschen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Dateizeile löschen

    Hi Leute !!

    Ich Habe in einer Textdatei 10tausend Datensätze .
    Diese Datei wird dann in eine MySQL Datenbank importiert .

    Am Anfang steht ein Startzeichen und am Ende eine Endzeichen .

    Wie kann ich in der Datei die erste und die letzte Zeile überprüfen , und diese Start- und Endzeichen dann rauslöschen .

    Damit soll geprüft werden , ob die Datei komplett ins web übertragen wurde .

  • #2
    PHP-Code:
    $zeilen=file('dateiname');
    $start=$zeilen[0];
    $startzeichen=$start{0};
    $ende=$zeilen[count($zeilen-1)];
    $endzeichen=substr($ende,0,-1); 
    ungetestet

    aber den sinn versteh ich nich so ganz, wenn beim upload der datei ein fehler auftritt, hast du in $_FILES['name_des_upload_feldes_im_formular']['error'] doch ne entsprechende meldung
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      Datei prüfen 2

      Hi Leute !

      Ich hab gestern schon eine Frage gestellt , die ich jetzt nochmal erläutern will .

      Problem : Ich schicke per FTP mehrere Dateien auf einen Webserver .
      Die Dateien haben zwischen 100 und 40000 Datensätze .

      Die Dateien werden dann per system(mysqlimport...) direkt in die Datenbank importiert .

      Es kommt in letzter Zeit öfter vor , dass die Dateien nicht komplett im Web ankommen . Der Import wird aber trotzdem ausgeführt .
      Resultat : Die Datenbank ist nur mit den übertragenen Sätzen gefüllt .

      Ich möchte jetzt ein Start und ein Endezeichen in die Datei einbauen , um zu prüfen , ob die Datei nun komplett im Web angekommen ist .

      Wie kann man das umsetzen .


      Gruss jogi

      Kommentar


      • #4
        Re: Datei prüfen 2

        Original geschrieben von jogisarge
        Ich hab gestern schon eine Frage gestellt , die ich jetzt nochmal erläutern will .
        OffTopic:
        und wieso erläuderst du in dem anderen thread nicht dein problem?

        Kommentar


        • #5
          *ZUSAMMENFÜHR*
          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


          Kommentar


          • #6
            Re: Datei prüfen 2

            Original geschrieben von jogisarge
            Wie kann man das umsetzen .
            hast du's so probiert wie ich vorgeschlagen hab?

            das sollte dir eigentlich (denke ich) das erste zeichen der ersten zeile und das letzte zeichen der letzten zeile liefern
            Ich denke, also bin ich. - Einige sind trotzdem...

            Kommentar


            • #7
              Dateizeile löschen

              Hi Leute !!


              Ich suchen nach einer Möglichkeit, in einer Datei die erste und die
              letzte Zeile rauszulöschen .

              Ich möchte noch erwähnen, dass es Dateien mit 1000 bis 100000 Zeilen sind.
              d.h. wenn ich die Datei auf herkömmlichem Weg in ein Array lese, wird das wohl sehr lange dauern .

              Die Dateien werden dann über die mysqlimport-Funktion direkt in die Datenbank geschrieben .

              Hat jemand ne Idee ??


              Gruss Jogi

              Kommentar


              • #8
                was spricht gegen einlesen in ein array mit $array=file('dateiname');

                dann kannst du die letzte element mit array_pop($array); löschen

                das erste element kriegst du weg mit array_shift($array);

                dann wieder in die datei schreiben mit file_put_contents('dateiname',implode("\n",$array));
                wenn das nich will, musst du halt fopen, fwrite und flcose bemühen *g*

                (ohne gewähr,is noch früh am tag und mir hat niemand kaffee gekocht im büro )

                wenn du das nicht willst, dann mach doch an den zeilenanfang der ersten und letzten zeile ein kommentarzeichen, so dass mysqlimport die zeile ingoriert, oder geht das nicht?
                Zuletzt geändert von mrhappiness; 23.04.2003, 08:47.
                Ich denke, also bin ich. - Einige sind trotzdem...

                Kommentar


                • #9
                  Erstmal danke !!

                  Meine bedenken richten sich da an die Datenmenge .
                  Bei 100000 Datensätzen sind das ja 99998 unnötige Lese- und Schreibbefehle .

                  Oder meinst du , das geht schnell genug ?

                  Wenn ich ein # in die Textdatei reinmache, wird die Zeile dann von mysqlimport ignoriert ?


                  Gruss jogi

                  Kommentar


                  • #10
                    Warum probierste es net aus?
                    Aber zur Info beim Import wird alles importiert unabhängig davon wie die Zeile aussieht, ausser es treten Fehler auf, kommentare werden ignoriert

                    Wenn Dir das alles zu aufwendig ist, warum importierst Du nicht Deine erste und letzte Zeile mit und danach löschst Du die 2 Datensätze einfach wieder?

                    Oder siehe oben.
                    Das ist jetzt Dein 3. Thread mit ein und demselben Problem...
                    Beantworte nie Threads mit mehr als 15 followups...
                    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                    Kommentar


                    • #11
                      [ZUSAMMENFÜHR]
                      *winks*
                      Gilbert
                      ------------------------------------------------
                      Hilfe für eine Vielzahl von Problemen!!!
                      http://www.1st-rootserver.de/

                      Kommentar

                      Lädt...
                      X