Maison  >  Article  >  Java  >  Puis-je analyser le CSV avec Scanner() et gérer les espaces avec précision ?

Puis-je analyser le CSV avec Scanner() et gérer les espaces avec précision ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-24 18:34:02583parcourir

Can I Parse CSV with Scanner() and Handle Spaces Accurately?

Lire CSV avec Scanner()

Lors de la lecture de fichiers CSV à l'aide de Java, il est possible de rencontrer des problèmes avec le déplacement du texte contenant des espaces vers le nouveau lignes. Cela se produit lorsque la classe Scanner interprète les espaces comme délimiteurs.

Pour résoudre ce problème, il est recommandé d'éviter d'utiliser Scanner() pour l'analyse CSV. Au lieu de cela, il est préférable d'utiliser des bibliothèques spécialement conçues pour la gestion des fichiers CSV, telles que :

  • opencsv
  • Ostermiller Java Utilities
  • Apache Commons CSV

Ces bibliothèques prennent correctement en compte les complexités de l'analyse CSV, y compris la présence d'espaces, de guillemets et de caractères d'échappement.

Voici un exemple utilisant la bibliothèque opencsv :

<code class="java">import com.opencsv.CSVReader;
import java.io.FileReader;
import java.util.List;

public class Main {

    public static void main(String[] args) {
        String fileName = "uploadedcsv/employees.csv";

        try (CSVReader reader = new CSVReader(new FileReader(fileName))) {
            List<String[]> lines = reader.readAll();
            for (String[] line : lines) {
                for (String value : line) {
                    System.out.print(value + " ");
                }
                System.out.println();
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}</code>

Par en utilisant une bibliothèque d'analyse CSV spécialisée, vous pouvez gérer avec précision le texte avec des espaces et vous assurer que les données sont analysées correctement.

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