Heim > Java > javaLernprogramm > Hauptteil

Wie gehe ich mit CSV-Dateien mit Leerraumgrenzen richtig um?

Susan Sarandon
Freigeben: 2024-10-25 02:26:42
Original
563 Leute haben es durchsucht

How to Handle CSV Files with Whitespace Boundaries Correctly?

Problem beim Lesen von CSV mit Scanner()

Beim Lesen einer CSV-Datei mit Scanner() kommt es häufig zu Problemen mit Text, der Leerzeichen enthält wird in die nächste Zeile verschoben. Dies liegt daran, dass der Scanner Leerzeichengrenzen einhält.

Falsche CSV-Verarbeitung bei der Verwendung von Scanner()

Der bereitgestellte Codeausschnitt verwendet Scanner(), um die CSV-Datei zu lesen und zu verarbeiten. Zeilen mit Leerzeichen werden jedoch nicht korrekt verarbeitet. Beispielsweise führt das Leerzeichen zwischen „Adresse 1“ und dem Komma in der CSV-Zeile „Adresse 1, Adresse 2“ dazu, dass sie in mehrere Zeilen aufgeteilt wird.

CSV-Parsing-Richtlinien

Bei der Arbeit mit CSV-Dateien müssen unbedingt die folgenden Richtlinien beachtet werden:

  • Falsche CSV-Parser führen zu fehlerhaften Ergebnissen:Viele CSV-Parser im Internet implementieren Zitate, Escape und andere Aspekte falsch, was zu einer falschen Ausgabe führt.
  • Verwenden Sie robuste CSV-Bibliotheken: Um diese Probleme zu vermeiden, verwenden Sie bewährte CSV-Bibliotheken wie opencsv, Ostermiller Java Utilities oder Apache Commons CSV.
  • Befolgen Sie den CSV-RFC: Wenn Sie darauf bestehen, Ihren eigenen Parser zu erstellen, lesen Sie sorgfältig den offiziellen RFC für CSV, um eine ordnungsgemäße Implementierung sicherzustellen.

In diesem speziellen Falldie folgenden Punkte verdeutlichen die fehlerhafte Handhabung:

  • CSV-Dateien können Leerzeichen zwischen Trennzeichen und (angeführten) Werten enthalten.
  • Scanner() teilt die Eingabe auf basierend auf Leerzeichengrenzen, was für die CSV-Analyse falsch ist.
  • Um die CSV-Datei korrekt zu lesen, sollten Sie die Verwendung einer geeigneteren CSV-Parser-Bibliothek in Betracht ziehen.

Das obige ist der detaillierte Inhalt vonWie gehe ich mit CSV-Dateien mit Leerraumgrenzen richtig um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!