Bonjour a tous, voila je veut créer un fichier au clique d'un bouton et je voudrait que ce fichier ai pour nom le texte rentrer dans un texte view,

donc bon je récupère dans une variable mon texte entrer dans le textview

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
        final EditText valeur;
 
        valeur = (EditText) findViewById (R.id.NameChef);
String NameChef = valeur.getText().toString();
et je met cette variable dans ce code ci

Code : Sélectionner tout - Visualiser dans une fenêtre à part
mFile = new File(this.getExternalFilesDir(null),"sdcard"+NameChef+namefile);
seulement voila a la création de mon fichier la variable NameChef est null donc je me retrouve avec un fichier nommé "sdcardnull.csv"

alors voila je suis un vrais vrais novice dans la dev donc j'imagine bien que ma variable NameChef n'est remplis que après avoir été appeler pas ma variable mFile mais je ne sais pas comment faire pour quelle sois remplis avant?!?

voici mon code complet:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
package ch.srvinfo.interfire.interfire;
 
import android.app.Dialog;
import android.app.TimePickerDialog;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.os.Environment;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v4.app.DialogFragment;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.text.format.DateFormat;
import android.util.AttributeSet;
import android.view.View;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.TimePicker;
import android.widget.Toast;
 
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.HashMap;
import java.util.List;
 
public class Inter extends AppCompatActivity {
 
 
 
 
 
   //public void Sauvegarde(View v) {
    //    EditText valeur = (EditText) this.findViewById(R.id.NameChef);
  //     String valStr = valeur.getText().toString();
//}
    private EditText NameChef = null;
    private Button msave = null;
    String valStr = null;
    private String namefile = ".csv";
    private String userName = "doudidididididid;";
    private String userName2 = "Nom";
    private File mFile = null;
    private Button mWrite = null;
    private Button mRead = null;
 
 
 
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_inter);
        final EditText valeur;
        //NomChef = (EditText) findViewById(R.id.NameChef);
        //EditText valeur = (EditText) this.findViewById(R.id.NameChef);
        valeur = (EditText) findViewById (R.id.NameChef);
       //valeur.setOnClickListener(this);
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);
 
        FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
        fab.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
                        .setAction("Action", null).show();
            }
        });
        DatePicker mDatePicker = (DatePicker) findViewById(R.id.datePicker);
        mDatePicker.updateDate(mDatePicker.getYear(), 0, 1);
 
        TimePicker mTimePicker = (TimePicker) findViewById(R.id.timePicker);
        mTimePicker.setIs24HourView(true);
        mTimePicker.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener() {
            @Override
            public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
                Toast.makeText(Inter.this, "Heure séléctioné: " + String.valueOf(hourOfDay) + ":" + String.valueOf(minute), Toast.LENGTH_SHORT).show();
            }
        });
 
 
        mFile = new File(this.getExternalFilesDir(null),"sdcard"+NameChef+namefile);
 
 
        mWrite = (Button) findViewById(R.id.Sauvegarde);
        mWrite.setOnClickListener(new View.OnClickListener() {
 
 
            public void onClick(View pView) {
 
 
               String NameChef = valeur.getText().toString();
 
                if(Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState()))
                    Toast.makeText(Inter.this, NameChef, Toast.LENGTH_SHORT).show();
                else
                    Toast.makeText(Inter.this, "pas ok : ", Toast.LENGTH_SHORT).show();
 
 
 
                try {
                    // Flux interne
                    FileOutputStream output = openFileOutput(namefile, MODE_PRIVATE);
 
 
                    // On écrit dans le flux interne
                    output.write(NameChef.getBytes());
                    output.write(userName2.getBytes());
                    // output.write("cellule1,");
                    //output.write("cellule2");
 
                    output.flush();
                    output.close();
                    output=null;
 
                    //output.write(userName.getBytes());
 
                    if(output != null)
                        output.close();
 
 
 
                    // Si le fichier est lisible et qu'on peut écrire dedans
                    if(Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())
                            && !Environment.MEDIA_MOUNTED_READ_ONLY.equals(Environment.getExternalStorageState())) {
                        // On crée un nouveau fichier. Si le fichier existe déjà, il ne sera pas créé
 
                        mFile.createNewFile();
                        output = new FileOutputStream(mFile);
                        output.write(userName.getBytes());
                        output.flush();
                        output.write(userName2.getBytes());
                        if(output != null)
                            output.close();
                    }
                } catch (FileNotFoundException e) {
                    e.printStackTrace();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        });
 
    }
 
 
 
 
 
 
 
}
merci beaucoup d'avance car la je patine...