J'ai une classe avec la déclaration suivante des champs:Pourquoi un "statique privé" n'est pas vu dans une méthode?
public class Game {
private static String outputFileName;
....
}
I définir la valeur de la outputFileName
dans la méthode main
de la classe. J'ai également une méthode write
dans la classe qui utilise le outputFileName
. J'appelle toujours write
après main
définit la valeur pour outputFileName
. Mais write
ne voit toujours pas la valeur du outputFileName
. Il dit que c'est égal à null
.
Quelqu'un pourrait-il me dire ce que je fais de mal?
AJOUTÉE Comme il est demandé que je posterai plus de code:
Dans la principale:
String outputFileName = userName + "_" + year + "_" + month + "_" + day + "_" + hour + "_" + minute + "_" + second + "_" + millis + ".txt";
f=new File(outputFileName);
if(!f.exists()){
try {
f.createNewFile();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
System.out.println("IN THE MAIN!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
System.out.println("------>" + outputFileName + "<------");
Cette ligne me transmet le nom du fichier.
Que dans le write
je:
public static void write(String output) {
// Open a file for appending.
System.out.println("==========>" + outputFileName + "<============");
......
}
Et sorties nulle.
cela devrait fonctionner, pouvez-vous poster plus de code s'il vous plaît? – oedo
Je suppose que ce serait plus facile si vous avez posté votre code complet. Coupez-le au fichier minimum montrant votre problème. –