Je travaille sur un projet dans lequel je dois lire un fichier grammaire (en le décomposant dans ma structure de données), dans le but de pouvoir générer une "DearJohnLetter" aléatoire. Mon problème est que lors de la lecture dans le fichier. Txt, je ne sais pas comment savoir si le fichier était censé être une ligne complètement vide ou non, ce qui est préjudiciable au programme.Java: comment savoir si une ligne dans un fichier texte était supposée être vide?
Voici un exemple d'une partie du fichier, Comment puis-je savoir si la ligne suivante était censée être une ligne vide? (BTW j'utilise juste un lecteur tamponné) Merci!
<start>
I have to break up with you because <reason> . But let's still <disclaimer> .
<reason>
<dubious-excuse>
<dubious-excuse> , and also because <reason>
<dubious-excuse>
my <person> doesn't like you
I'm in love with <another>
I haven't told you this before but <harsh>
I didn't have the heart to tell you this when we were going out, but <harsh>
you never <romantic-with-me> with me any more
you don't <romantic> any more
my <someone> said you were bad news
En bref: vous voulez juste déterminer dans une boucle 'BufferedReader # readLine()' si la ligne * next * est vide ('line.isEmpty() == true') ou non? – BalusC
Si vous pouvez modifier le texte, j'utiliserais quelque chose comme '% REASON' pour vous indiquer où vous pouvez échanger une raison. Ce pourrait être une meilleure approche pour trouver des lignes vides. –
@BalusC C'est ce que j'essaie de faire, mais pour une raison quelconque, il ne lit jamais une ligne vide (sauf la dernière ligne qui est toujours nulle) Ne fonctionne pas:/ @Anthony Oui, je peux le modifier. Hmm cela devrait me permettre de finir le reste du programme, merci :) Cela dit, quelqu'un sait-il une façon de faire la même chose sans étiquette pour agir comme la ligne vide? – defn