csv bearbeiten

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

  • csv bearbeiten

    Hi!

    Ich kotz gleich,

    Okay, folgendes, ich habe eine CSV Datei, in dieser sind 3 Spalten welche jeweils durch ein Komma getrennt sind, alles was ich will ist diese in PHP einlesen (klappt bereits) ... dann die Leerzeilen welche in der ersten und letzten Spalte teilweise sind löschen und die Datei abermals speichern. Das ist doch möglich, oder?

    Grüße,
    Matze

  • #2
    aber klar doch.
    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


    • #3
      @Abraxax: Jetzt kotzt er wirklich.

      Ansätze, Code, Fehlermeldungen, Symptome?

      Kommentar


      • #4
        Original geschrieben von onemorenerd
        @Abraxax: Jetzt kotzt er wirklich.
        wieso denn das? nur weil ich seine frage korrekt beantwortet habe?
        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


        • #5
          Ja, denn die richtige Antwort brachte ihn zur Erkenntnis, dass es die falsche Frage war. Zumindest falsch formuliert, im Kopf hatte sicher die richtige.

          Woran liegt es nur, dass die Leute so wischiwaschi formulieren? Er hier hat sein Problem doch erkannt, warum kann er nicht gezielt nach einer Lösung oder lieber nur nach einem Ansatz fragen? Habe das Gefühl, dass das in den letzten Jahren zugenommen hat. Kaum einer sagt noch was er meint, teilweise bekommt man nur Satzfetzen (gern auch in Möchtegern-hacker-ianisch *sic*) und man muß den Kern der Sache aus dem Kontext schließen.
          Zuletzt geändert von onemorenerd; 06.12.2005, 20:05.

          Kommentar


          • #6
            tja. so sind die leute. meist script-kiddies. und die können es nicht anders und werden auch immer jünger.

            ich könnte jetzt noch was sagen ... lasse es aber. nur ein stichwort noch dazu ... P.I.S.A. lässt grüßen.
            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


            • #7
              *mal einfach was postet, damit der Link in der Sig sich auch in diesem Thread wiederfindet*
              Wie man fragen richtig stellt!

              Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

              bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
              Wie man Fragen richtig stellt

              Kommentar


              • #8
                Hi!

                Okay, gut, nun weiß ich also wie man mit neuen Mitgliedern umgeht. Hatte es mehrfach in anderen Threads gelesen .... aber da fand ich es lustig. Hier weniger. Aber gut, ich entscheide nun mal selbst zwischen neuen Thread mit "korrekter" Fragestellung oder einfach hier nochmal die "Frage" neu zu formulieren.

                Neue Formulierung des Problems zur Realisierung einer Bearbeitungsmöglichkeit einer durch ein Array eingelesenden CSV Datei:


                Hier die History:
                PHP-Code:
                <?php
                 $Zeilen 
                1;
                 
                $Dateizeiger fopen("test.csv""r");
                while((
                $Daten=fgetcsv($Dateizeiger1000";"))!==FALSE)
                 {
                     
                $AnzahlDerFelder count($Daten);
                     echo
                "<p><b>",
                         
                $AnzahlDerFelder,
                        
                " Felder in Zeile ",
                        
                $Zeilen,
                        
                ":</b><br>";
                    
                $Zeilen++;
                    for(
                $i=0$i<$AnzahlDerFelder$i++)
                    {
                        echo 
                $Daten[$i],
                            
                "<br>";
                    }
                    echo
                "</p>";
                }
                fclose($Dateizeiger);
                ?>
                Eine CSV Datei wird eingelesen und ausgegeben. Sie besteht aus drei Spalten wovon nun aus allen Spalten die Leerzeichen entfernt werden sollen und die Datei abermals auf dem Server abgespeichert werden soll, ob die erneute Speicherung ein überschreiben der alten Datei oder ein Neuanlegen ist ist hierbei unrelevant.

                1. Wer kann mir den Befehl nennen mit welchem ich die geöffnete Datei verändern kann?
                2. Wer kann mir ein Codebeispiel (Link oder hier gepostet) nennen?


                Für eventuelle Rechtschreibfehler bitte ich um Nachsicht.

                Grüße aus München,
                Matthias

                Kommentar


                • #9
                  PHP-Code:
                  $str file_get_contents('test.csv');
                  $str str_replace(' '''$str);
                  file_put_contents('test.csv'$str); 
                  Falls du eine der file_-Funktionen nicht hast (versionsabhängig), schau im Manual zur Funktion nach 'Nachbauten'.

                  Falls du komplexere Ersetzungsoperationen brauchst - etwa 'nur die Leerzeichen aus der x. und y. Spalte entfernen', schau dir im Manual die preg_-Frunktionen an.

                  *Manual heißt http://php.net/manual

                  Kommentar


                  • #10
                    Hi!

                    DREI Zeilen Code und meine Probleme sind gelöst, wirklich SUPER! DANKE!

                    Noch ein Ding, wenn ich am ANFANG jeder Zeile ein Leerzeichen setzen will, wie ist das möglich?

                    Danke schon im vorraus,
                    Matze

                    Kommentar


                    • #11
                      PHP-Code:
                      $str file_get_contents('test.csv');
                      $str str_replace(' '''$str); // Leerzeichen entfernen
                      $str str_replace("\n""\n "$str); // Leerzeichen am Zeilenanfang
                      file_put_contents('test.csv'$str); 
                      Aber Achtung: Wenn eine Zelle einen Zeilenumbruch enthält (\\n), wird ebenfalls ein Leerzeichen eingefügt. Das kannst du mit preg_replace umgehen, aber bevor du jetzt nachfragst, schaust du bitte selbst nach wie das geht und versuchst es bitte.

                      Kommentar


                      • #12


                        Okay, dann werd ich das mal machen, by the way, das funktioniert wirklich klasse, danke! Die erste Zeile wird jedoch nicht bearbeitet, woran liegt das? Hier mein derzeitiger Code:

                        PHP-Code:
                        $str file_get_contents('test.csv');
                        $str str_replace(' '''$str); // Leerzeichen entfernen
                        $str str_replace("\n""\n "$str); // Leerzeichen am Zeilenanfang
                        $str str_replace(" 0","+49",$str);
                        file_put_contents('test.csv'$str);?> 

                        Kommentar


                        • #13
                          Die erste Zeile wird jedoch nicht bearbeitet, woran liegt das?
                          Was wird nicht bearbeitet ? Das Leerzeichen entfernen (müsste aber funzen) ? Das erste Leerzeichen (kann bestimmt nicht funzen denn du hast ja kein \\n das ersetzt werden könnte) ?
                          PHP-Code:
                          //für das erste Leerzeichen auf der ersten Zeile
                          $str ' '.$str
                          Gruss

                          tobi
                          Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                          [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                          Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                          Kommentar


                          • #14
                            Original geschrieben von RealFairPlayer
                            Die erste Zeile wird jedoch nicht bearbeitet, woran liegt das?
                            Daran, daß du gar nicht kapierst, was da passiert.

                            PHP-Code:
                            $str ' '.str_replace("\n""\n "$str); 

                            Kommentar


                            • #15
                              Hi!

                              Danke für deine Antwort Tobi!

                              Und für die andere Antwort ebenfalls Danke .... vielleicht sollten sich einige hier darüber mal Gedanken machen wie sie mit anderen kommunizieren. Einem Einsteiger hilft es nunmal nicht weiter wenn er liest "weil du gar nicht kapierst was hier passiert" .... diese Community ist eine der größten, wundert es da das auch "Neulinge" dabei sind, die eben "noch" nicht so qualifiziertes HIntergrundwissen mitbringen, muss man sie deshalb gleich angehen? In einem Insiderboard für PHP Cracks okay, da müssen sich Neulinge erst beweisen, aber bei einem großen Board hoffte ich persönlich auf mehr Kulanz,

                              Naja, werden schon nicht alle so ruppig sein hier ... und geholfen wurde mir ja trotzdem nur musste ich dafür ganz schön einstecken finde ich ...

                              Grüße,
                              Matthias

                              Kommentar

                              Lädt...
                              X