Les erreurs sont avec la méthode writeToFile(). Je peux le commenter et il fonctionne parfaitement sans l'erreur Exception. Donc, fondamentalement, j'essaie d'obtenir ces faits de nutrition à imprimer sur un fichier texte. L'erreur ressemble à ceciJe reçois toujours 'Exception dans le thread "main" java.lang.NullPointerException'
« Exception dans le thread "principal" java.lang.NullPointerException à Environment.writeToFile (Java1001.java:71) à Environnement. (Java1001.java:54) à Java1001 .main (Java1001.java:43) »
import static java.lang.System.*;
import java.io.*;
public class Java1001
{
public static void main(String[] args) throws IOException
{
new Environment();
}
}
class Environment
{
private PrintStream outFile;
public Environment()
{
createOutputStream();
writeToFile();
}
public void createOutputStream()
{
// create outFile stream here
File outFile = null;
try
{
outFile = new File("Nutrition.txt");
outFile.createNewFile();
}
catch (Exception e){}
}
public void writeToFile()
{
outFile.println("NUTRITION FACTS");
outFile.println("======================================");
outFile.println("Serving Size 1 tbsp (6g)");
outFile.println("Servings Per Container about 4");
outFile.println("======================================");
outFile.println("Amount Per Serving");
outFile.println("Calories 20");
outFile.println("Calories from Fat 5");
outFile.println("======================================");
outFile.println("Total Fat 0.5g");
outFile.println("Sodium 280mg");
outFile.println("Total Carbohydrate 4g");
outFile.println("Sugars 0g");
outFile.println("Protein less than 1 g");
outFile.println("======================================");
}
}
Vous avez 2 variables nommées 'outFile'. –
Vous initialisez la variable locale 'outFile' dans' createOutputStream() 'à la place du membre de données et le membre de données est donc' null' dans 'writeToFile()' – breezee