je peux ecrire sur mon disque, mais mon code veut pas que j'écrive ou je veux
Bonjour,
j'ai fait un petit code qui me permet d'écrire sur mon disque, c un code standard que j'ai recuperer sur developpez
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
public void ecrire(AppletPh2 a, String nomFichier1, String texte) {
this.nomFichier=nomFichier1;
adressedufichierGlobal="C:\\TEMP"+this.nomFichier;
try{
FileWriter fw = new FileWriter(adressedufichierGlobal, true); // true permet d'accumuler les écritures dans le fichier txt
BufferedWriter output = new BufferedWriter(fw);
output.write(texte);
output.flush();
}catch(IOException ioe){
System.out.println("erreur : " + ioe );
}
} |
ça fonctionne bien ; jusque la ok !
mais moi j'en demande plus et j'ai crée une petite boite de dialogue avec 3 text field que je récupere, qui me permet de determiner l'emplacemenent !
voila je code des textfield que l'on récupere ensuite vers la fonction ecrire
c dans ma classe boitedeDialogue
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
public void actionPerformed(ActionEvent e){
if (e.getSource()==bValider){
tfEntier = this.tfPeriode.getText();
tfTexte = this.tfTitreFichier.getText();
strAdresse01 = this.tfAdresse1.getText(); ROOT
strAdresse02 = this.tfAdresse2.getText(); sous dossier
strAdresse03 = this.tfAdresse3.getText(); sous sous dossier
// eft est de type EcrireFichierTexte
this.eft.setNomFichier("tfTexte");
this.eft.setAdresse01(this.strAdresse01);
this.eft.setAdresse02(this.strAdresse02);
this.eft.setAdresse03(this.strAdresse03);
this.setVisible(true);
System.out.println(eft.getAdresse01());
}
} |
le constructeur de EcrireFichierTexte inclut donc 3 string
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
public class EcrireFichierTexte{
private AppletPh2 app;
private String adressedufichier01; // localisation sur le disque
private String adressedufichier02;
private String adressedufichier03;
private String adressedufichierGlobal; // idem + nomFichier !
private String nomFichier;
//private JFrame _bdd = app.getFenetrePrincipale().get
//private JFrame _bdd =app.getFenetrePrincipale().retourneBDD();
public EcrireFichierTexte(AppletPh2 applet){
this.app = applet;
this.adressedufichier01 = "C:";
this.adressedufichier02 = "TEMP";
this.adressedufichier03 = "";
} |
ce qui donne ceci ajouté au début du code précédent fonction ecrire (fonction de EcrireFichierTexte):
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
public void ecrire(AppletPh2 a, String nomFichier1, String texte) {
this.nomFichier=nomFichier1;
//par defaut au lancement ça va danc C:\\TEMP
// après plus possible de changer :S
if ( this.adressedufichier02=="" && this.adressedufichier03=="" )
{adressedufichierGlobal=(this.adressedufichier01+"\\"+this.nomFichier);}
else if (this.adressedufichier02!="" && this.adressedufichier03=="" )
{adressedufichierGlobal=(this.adressedufichier01+"\\"+this.adressedufichier02+"\\"+this.nomFichier);}
else if (this.adressedufichier02!="" && this.adressedufichier03!="" )
{adressedufichierGlobal=(this.adressedufichier01+"\\"+this.adressedufichier02+"\\"+this.adressedufichier03+"\\"+this.nomFichier);}
System.out.println("01"+this.adressedufichier01);
System.out.println("02"+this.adressedufichier02);
System.out.println("03"+this.adressedufichier03);
try{
FileWriter fw = new FileWriter(adressedufichierGlobal, true); |
malheureusement : il n'y a rien a y faire quand je change les champ de mes textfield:cry: par contre si je change QUE le nom du fichier pas de problème !