Programmation d'un éditeur de texte - Java - Programmation
Marsh Posté le 15-10-2013 à 01:00:49
Le null pointer vient de
Code :
|
La variable texte n'est pas "setté" à ce moment là
Pour le coup du répertoire courant, c'est normal, tu n'ouvres pas le fichier avec le chemin complet, mais juste son nom. La vrai question est :
- pourquoi ne passe tu pas en paramètre à la fonction lireFichierDuDisque ou ecrireFichierDuDisque un "File" (java.io.File) plutôt que son nom.
D'ailleurs le "File" courant pourrait être une variable de ta classe pour permettre la sauvegarde si il a été modifié. et la variable "modifie" devrait être remise à "false" après une ouverture de fichier...
Bref, il faudrait revoir un peu la structure... ça manque de spécifications tout ça (de conception quoi)...
Marsh Posté le 14-10-2013 à 12:16:28
Bonjour,
Je suis étudiant en informatique, et nous avons pour projet de programmer un éditeur de texte soi-même.
Jusqu'à présent, j'ai réussi à ouvrir un éditeur à peu près correct. La prochaine étape, c'est d'ajouter un "*" à la fin du nom du texte lorsque celui-ci est modifié.
Et c'est là que deux problèmes se posent : D'une part, le texte d'origine du départ est le seul à accepter les modifications (normalement, si j'écris sur un texte ou si j'en supprime une partie, il est censé écrire "insertion" ou "suppression" dans le terminal). Quand j'ouvre un autre texte, celui-ci ne prend même pas en compte les modifications.
Le deuxième problème, je ne le comprend pas : J'ai un NullPointerException au tout début de l'exécution du programme. Mais étrangement, ça ne lui fait rien, il marche quand même. Il peut ouvrir les textes situés dans le même répertoire. En revanche, si le fichier est situé dans un autre répertoire, il me répond "lireFichierDuDisque:PB Fichierjava.io.FileNotFoundException: readme.txt (No such file or directory)"
Voilà... Je tourne en rond depuis hier soir sans trouver la faute. Donc, si jamais l'un de vous peut me la signaler, ce serait génial.
Je vous transmets le code source :
Merci d'avance ! ^^