繁体   English   中英

Android不保存文件

[英]Android Not Saving Files

我一直在Android上做一些工作,经过三到四次不同的尝试,我发现似乎无法让Android将文件保存在任何地方。 实际上,它甚至没有为我的应用程序在data /中创建一个文件夹。

这是我尝试保存文件的方式-这也在我的主要活动中。

@Override
public void onStop(){
    super.onStop();

    try{
        FileOutputStream memboricOut = getApplicationContext().openFileOutput("memboric.core", Context.MODE_PRIVATE);
        brain.save(memboricOut);
    }catch(Exception e){
        System.err.println("Could not save memboric core.");
        e.printStackTrace();
    }
}

在brain.save()内部:

public boolean save(FileOutputStream fileOut) {
    try{
        ObjectOutputStream oo = new ObjectOutputStream(fileOut);
        oo.writeObject(this);
        oo.close();
        fileOut.close();
        System.out.println("Memboric Core saved successfully.");
        return true;
    }catch (Exception e) {
        e.printStackTrace();
    }

    return false;
}

这段代码似乎什么也没做。 我也将保存的内容也放在了onDestroy中。

我刚刚选择了不好的位置进行保存吗? 我无法想象可能出了什么问题。

您是否有权保存文件? 您可以通过向AnroidManifest.xml添加android.permission.WRITE_EXTERNAL_STORAGE权限来添加该权限。

oo.writeObject(本);

大脑有可序列化的数据吗?

Class Brain implements java.io.Serializable {
    public String toString() {
        return "serialized data";
    }
}

如果没有,DataOutputStream可能是一个更好的选择。

DataOutputStream oo = new DataOutputStream(fileOut);
oo.writeInt(value); // if breain have int value
oo.flush();
oo.close();

保存的数据将显示在/data/data/(your.package.name)/files/memboric.core中
使用仿真器(或根设备)检查文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM