Maison  >  Article  >  Java  >  Comment gérer correctement les fichiers CSV avec des limites d’espaces ?

Comment gérer correctement les fichiers CSV avec des limites d’espaces ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-25 02:26:42554parcourir

How to Handle CSV Files with Whitespace Boundaries Correctly?

Problème de lecture CSV avec Scanner()

Lors de la lecture d'un fichier CSV à l'aide de Scanner(), il est courant de rencontrer des problèmes avec du texte contenant des espaces étant déplacé vers la ligne suivante. Cela se produit parce que Scanner suit les limites des espaces.

Gestion CSV incorrecte dans l'utilisation de Scanner()

L'extrait de code fourni utilise Scanner() pour lire et traiter le fichier CSV. Cependant, il ne gère pas correctement les lignes contenant des espaces. Par exemple, dans la ligne CSV « adresse 1, adresse 2 », l'espace entre « adresse 1 » et la virgule entraîne sa division en plusieurs lignes.

Directives d'analyse CSV

Lorsque vous travaillez avec des fichiers CSV, il est essentiel de prendre en compte les directives suivantes :

  • Des analyseurs CSV incorrects produisent des résultats erronés : De nombreux analyseurs CSV sur Internet implémentent des citations, s'échappent et d'autres aspects sont incorrects, conduisant à une sortie incorrecte.
  • Utilisez des bibliothèques CSV robustes : Pour éviter ces problèmes, utilisez des bibliothèques CSV bien établies comme opencsv, Ostermiller Java Utilities ou Apache Commons. CSV.
  • Suivez CSV RFC : Si vous insistez pour créer votre propre analyseur, étudiez attentivement la RFC officielle pour CSV afin de garantir une mise en œuvre correcte.

Dans ce cas précis, les points suivants mettent en évidence une manipulation incorrecte :

  • Les fichiers CSV peuvent contenir des espaces entre les séparateurs et les valeurs (citées).
  • Scanner() divise l'entrée basé sur les limites d'espaces, ce qui est incorrect pour l'analyse CSV.
  • Pour lire correctement le fichier CSV, vous devriez envisager d'utiliser une bibliothèque d'analyseur CSV plus appropriée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn