Partage
  • Partager sur Facebook
  • Partager sur Twitter

Lecture fichier texte et tableau de char.

SOS d'un Terrien en détresse!

    5 mai 2012 à 18:03:15

    Salut à tous.

    Je souhaite lire un fichier texte (mot par mot), en utilisant un read() (lecture caractère par caractère). Pour cela j'utilise un tableau de char de taille 501, dans lequel je stocke les caractères lues, et dès que je lis un espace (séparation entre deux mots), je transforme mon tableau de char en une string str.
    Le souci que je rencontre c'est que dès que je veux comparer ma string str avec une autre string, la comparaison ne s'effectue pas correctement.

    Pour etre plus clair, prenons un exemple:
    Dans mon fichier .txt, le programme lit "Chapitre 1: Les Cucurbitacés", et je veux que mon programme affiche en console juste "Les Cucurbitacés". Pour cela, je stocke d'abord le mot "Chapitre" dans mon tableau de char, que je transforme ensuite en String, et je fais ma comparaison 'si str.equals("Chapitre") alors ne rien faire'.
    Pourtant "Chapitre s'affiche quand meme, et je pense que cela vient du fait que dès que je transforme mon tableau de char en string str, ce dernier contient aussi les caractères nuls de mes 493 autres espaces alloués pour la tableau de taille 501.

    Si quelqu'un peut m'aider, je l'en remercie par avance :)
    • Partager sur Facebook
    • Partager sur Twitter
      6 mai 2012 à 14:35:45

      Fais un trim sur la chaîne crée, ou indique explicitement le nombre de caractères réels dans le constructeur.

      Contrairement au C/C++, une chaîne contenant des caractères NULL ne pose absolument aucun problème en java, et sont parfaitement autorisés.

      • Partager sur Facebook
      • Partager sur Twitter

      Lecture fichier texte et tableau de char.

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown