9
votes

Bloc-notes ne reconnaissant pas les nouveaux caractères de ligne dans le code Java en utilisant PrintStream à la sortie du fichier texte

J'ai besoin d'aide avec mon projet Java pour l'école. Veuillez consulter le code ci-dessous pour le livre de classes et la bibliothèque, ainsi que le fichier texte d'entrée et le fichier texte de sortie souhaité.

J'ai un problème avec le fichier de sortie. Lorsque je l'ouvre dans Word ou WordPad ou Notepad ++, le fichier est formaté correctement. Mais lorsque j'ouvre le fichier dans le Bloc-notes, le rapport est tout sur une ligne.

Pour une raison quelconque, le bloc-notes ne reconnaît pas les nouveaux caractères de ligne. Des pensées à ce sujet? Comment puis-je modifier le code Java afin que le Bloc-notes affiche le rapport correctement? Je suis un java noob et je me débats vraiment dans ce cours Java. Toute aide que vous pouvez offrir serait grandement appréciée. Merci.

Le fichier texte d'entrée appelé inbook.txt se lit comme suit:

Intro to Java 0123444555680 Tony Gaddis Tg003 Intro to javascript 9780071632969 John Pollock Jp402 Principes fondamentaux du développement de jeux 9780763778 Heather Maxwell Chandler HC026

Le fichier texte de sortie appelé Outbook.txt doit lire exactement comme suit:

danhers - Liste des livres

Intro to Java Par Tony Gaddis (TG003) ISBN: 0123444555680

Intro to JavaScript Par John Pollock (JP402) ISBN: 9780071632969

Principes fondamentaux du développement de jeux Par Heather Maxwell Chandler (HC026) ISBN: 9780763778

Notre catalogue actuel a 3 livres.

Merci de votre intérêt.

// book.java xxx

bookapplication.java xxx


2 commentaires

Le programme Java est-il exécuté sous Windows?


oui, windows ..... \ r \ n a fait le tour


3 Réponses :


12
votes

Vous avez besoin de \ r \ n ( 0x0d 0x0a ) sur Windows pour mettre fin à une ligne et deux paires pour sortir une ligne vide.


0 commentaires

21
votes

Vous utilisez le caractère \ n code> pour les nouvelles lignes, ce qui est correct pour * Nix. Dans Windows, il est \ r \ n code>. Si vous ne voulez pas vous soucier de la plate-forme que vous vous trouvez, vous pouvez utiliser:

System.getProperty("line.separator")


0 commentaires

5
votes

Essayez d'utiliser le séparateur de ligne système (\ r \ n sous Windows comme indiqué) xxx


0 commentaires