Libgdx 将BufferedWriter与Gdx.files.internal()一起使用时出现NullPointerException

Libgdx 将BufferedWriter与Gdx.files.internal()一起使用时出现NullPointerException,libgdx,java-io,Libgdx,Java Io,我试图编写一个简单的函数,将我的播放器的配置文件保存到一个内部文件中,但它在outputWriter初始化时抛出一个NullPointerException public void saveProfile(String filePath){ BufferedWriter outputWriter; try{ outputWriter = new BufferedWriter(new OutputStreamWriter(Gdx.files.local(fi

我试图编写一个简单的函数,将我的播放器的配置文件保存到一个内部文件中,但它在outputWriter初始化时抛出一个NullPointerException

    public void saveProfile(String filePath){
    BufferedWriter outputWriter;
    try{
        outputWriter = new BufferedWriter(new OutputStreamWriter(Gdx.files.local(filePath).write(false)));

        saveInfo[pid]=count;
        gamesLost=saveInfo[pgamesLost]=gamesLost;
        gamesWon=saveInfo[pgamesWon]=gamesWon;
        saveName=name;

        outputWriter.write(name+"\n");
        for(int i=0;i<saveInfo.length;i++){
            outputWriter.write(Integer.toString(saveInfo[i])+"\n");
        }

        outputWriter.close();

    }catch (Exception e) {
        e.printStackTrace();
    }
}
public void saveProfile(字符串文件路径){
缓冲写入器输出写入器;
试一试{
outputWriter=new BufferedWriter(新的OutputStreamWriter(Gdx.files.local(filePath.write)(false));
saveInfo[pid]=计数;
gamesLost=saveInfo[pgamesLost]=gamesLost;
gamesWon=saveInfo[pgamesWon]=gamesWon;
saveName=name;
outputWriter.write(名称+“\n”);

对于(int i=0;i通常,
Gdx.files.local(filePath)
的结果为空。^此项。供将来参考:它可能会帮助您分配每个值(例如Gdx.files.local,…)它们自己的变量。在调试时提供更多细节。只是让您知道:内部文件始终是只读的,因此您不能使用
Gdx.files.Internal
FileHandle
。对于播放器配置文件等。您可以使用
首选项
s,这是在系统中运行应用程序时写入持久数据的唯一方法浏览器