如何修复 FileWriter 抛出的 NullPointerException [重复]

Posted

技术标签:

【中文标题】如何修复 FileWriter 抛出的 NullPointerException [重复]【英文标题】:How to fix NullPointerException thrown by FileWriter [duplicate] 【发布时间】:2022-01-23 19:56:12 【问题描述】:

我在运行代码时遇到以下异常。

java.lang.NullPointerException
at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:228)
at java.base/java.io.FileWriter.<init>(FileWriter.java:113)
at FileLogger.log(FileLogger.java:39)
at Mapping.main(Mapping.java:104)

代码如下:


import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

public class FileLogger implements Logger 
    private static final String FILE_LOGGER_NAME = "FileOutput.txt";

    static File f;

    static 
        try 
            File f = new File(FILE_LOGGER_NAME);
            if (f.delete()) 
                f.createNewFile();
             else 
                f.createNewFile();
            
         catch (IOException e) 
            e.printStackTrace();
        
    

    @Override
    public void log(String message) 
        try 
            FileWriter writer = new FileWriter(f, true);
         catch (Exception e) 
            e.printStackTrace();
        
        // METHOD UNFINISHED
    

我正在创建一个 FileWriter 对象,其中 boolean append = true 和 File 对象 flog(String message) 方法上方的静态块中声明和填充。 究竟是什么导致了这个异常,我该如何解决?

【问题讨论】:

【参考方案1】:

成员变量f从未初始化。

您在静态初始化程序块中使用了局部变量 f

【讨论】:

以上是关于如何修复 FileWriter 抛出的 NullPointerException [重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何修复 Puppeteer 抛出的“节点不可见或不是 HTMLElement”错误?

如何修复 redux/redux thunk 抛出的“Uncaught TypeError: callback is not a function”?

如何修复 io.ktor.server.engine.CommandLineKt 在 gradle/kotlin/netty 项目中抛出的“既未指定端口也未指定 sslPort”?

如何找出PHP代码块可能抛出的所有错误?

如何识别 XCUITest 在 xcode 中运行时抛出的一些随机寡妇

如何使用 Aspectj 捕获和抑制 Java 类抛出的异常