Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Moin!

Ich habe folgendes Problem. Ich habe eine CSV Datei welche solche Daten enthält:

8;6;5:8;2;56;464;6;464;64;643;113;198;431;8361 etc....

Nun möchte ich bestimmte Positionen aus der Datei auslesen und in eine neuen Datei hinein schreiben.

Hier mal ein Beispiel für die neue Anordnung:

8;6;8;2;56 etc.

Wie stelle ich das am geschicktesten an?

Hilfe durch ein Scriptbeispiel natürlich sehr willkommen

:D

Geschrieben

am besten die datei zeilenweise einlesen, dann jede zeile am ";" exploden und dann einfach nur die teile der datei in die neue datei schreiben die man möchte

Geschrieben

Hm, wie immer kann ich das nur anhand von ASP erklären:

Da gibt es eine sogenannte "Split"--Funktion, die....

Mit der Split-Funktion lässt sich ein String an Hand von Trennzeichen in Teilstrings zerlegen.

Syntax:

Split (Ausdruck, [Trennzeichen, [Anzahl, [Vergleichen]]] )

Parameter:

Ausdruck

(String) Zeichenfolge, die untergeordnete Zeichenfolgen und Trennzeichen enthält.

Trennzeichen

Optional. (String) Zeichen innerhalb einer Zeichenfolge zur Ermittlung der Grenzen der untergeordneten Zeichenfolge. Wird Trennzeichen nicht angegeben, wird das Leerstellenzeichen als Trennzeichen angenommen.

Anzahl

Optional. (Integer) Anzahl der untergeordneten Zeichenfolgen, die zurückgegeben werden sollen. -1 gibt an, dass alle untergeordneten Zeichenfolgen zurückgegeben werden.

Vergleichen

Optional. (Integer) Legt fest, wie veglichen werden soll.

Dann hast Du den kompletten String in einem Array und kannst mit den einzelnen Werten arbeiten.

In PHP sollte es sicherlich etwas vergleichbares geben.

[edit] okokokok...:D habs grad irgendwo gelesen, dass das "exploden" sich auf eine PHP-funktion bezieht.... Verschludrigung![/edit]

Geschrieben


input.csv:

1;2;3;4;5;6;7;8;9;10

2;3;4;5;6;7;8;9;10;11

3;4;5;6;7;8;9;10;11;12


$in_handle = fopen ("./input.csv", "r");

$out_handle = fopen ("./output.csv", "w");


  while (($line = fgets($in_handle))) {

    $parts = explode(";", $line);

                //4. Spalte   //7. Spalte  //10.Spalte

    $out_string = $parts[3] . $parts[6] . $parts[9];

    fwrite($out_hanlde, $out_string);

  }


fclose($in_handle);

fclose($out_handle);


output.csv

4;7;10

5;8;11

6;9;12

ist ungetestet!!

Geschrieben

ja sry mein fehler.

du könntest aber auch ma in der doku nachschauen warums nicht geht.

ich bin ja nicht das mädchen für alles

so müsstest passen


while (($line = fgets($in_handle, 4096))) {
[/PHP]

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...