2016-04-07 16 views
0

Anscheinend haben wir einen funktionierenden CSV-Parser für den Import von Dateien, in denen Textdatenwerte in Anführungszeichen eingeschlossen sind. Jetzt müssen wir bei einer Änderung dieser Funktion die Anführungszeichen für alle Datenfelder entfernen.Parsing CSV mit einem Komma zwischen Daten ohne Anführungszeichen

Das Problem ist, wir haben ein "Adresse" -Feld, das Kommas dazwischen enthält und jetzt als separate Datenfelder analysiert wird. Die Art, wie ich den Umgangs mit dieser denken kann, ist

  1. eine intelligente Methode erstellen, die, dass ein Komma gehört zu einem Datenfeld
  2. So verwenden Sie das Pipe-Zeichen als Trennzeichen identifizieren ‚|‘

Derzeit würde Ich mag mit der Option Nummer 1

gehen Gibt es eine Bibliothek, die dies tun können?

Antwort

1

So weit ich weiß, ist doppelte Anführungszeichen in CSV-Daten Standard. Dadurch kann der CSV-Parser identifizieren, welche Kommas verwendet werden, um die Daten schließlich zu teilen. Daher würde Ihre Änderung dazu führen, dass sich der Parser nicht mehr normal verhält.

Wie gesagt, wie würden Sie wissen, ob Sie sich trennen oder weitermachen müssen? Wenn Ihre Daten kein sehr starres Muster haben, bezweifle ich, dass es möglich ist, ein System zu entwickeln, das zuverlässig schätzt, wo es aufgeteilt werden muss.

Die einfachere Lösung wäre höchstwahrscheinlich, einfach das Delimeter zu wechseln. Sie müssen auch bedenken, dass diese Dateien manchmal von Menschen verarbeitet/aktualisiert werden, so dass Sie sich an die intuitivsten Formate halten müssen.

Verwandte Themen