如何在 Android 中保存数据

Posted

技术标签:

【中文标题】如何在 Android 中保存数据【英文标题】:How to save data in Android 【发布时间】:2015-03-09 12:50:32 【问题描述】:

我做了一些研究,发现有几种方法可以存储来自 android 应用程序的数据,但我不确定应该使用哪种方法。

我希望保存 2 个文件,一个有很多 int (1500 - 2000),另一个有很多字符串 (588)。

应用程序启动时都需要读取两者,但除非应用程序关闭,否则不需要再次读取。

真正重要的要求是文件可以从应用程序中删除并放在另一台设备上。这个想法是,如果用户有平板电脑和手机,他们可以在手机上设置应用程序,然后将文件复制到平板电脑。

考虑到数据的类型和要求,保存数据的最佳方法是什么?

【问题讨论】:

this 有没有给您带来任何问题? @323go 我读了那个页面,它让我感到困惑并让我问这个问题 如果您解释了其中的哪一部分让您感到困惑,您的问题可能会更有用。实际上,您只是要求人们重申现成的文档,这导致您在下面看到的答案很糟糕。 JSON/XML/CSV 格式将是一个很好的解决方案 【参考方案1】:

对您来说最好的方法是将数据保存在文本文件中,以便您可以在多个设备中使用它。将数据保存在文件中的代码:

        try 
            File sdCard=Environment.getExternalStorageDirectory();
            File myFile = new File(sdCard,"filename.txt");
            myFile.createNewFile();
            FileOutputStream fOut = new FileOutputStream(myFile);
            OutputStreamWriter myOutWriter = 
                                    new OutputStreamWriter(fOut);
            String data="your data";
            myOutWriter.append(data);
            myOutWriter.close();
            fOut.close();
         catch (Exception e) 
            e.printStackTrace();
        

将此添加到您的清单中:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

【讨论】:

【参考方案2】:

如果您从应用程序管理器中清除应用程序数据,所有共享首选项数据将被删除。 这就是为什么您不应该使用共享首选项。

【讨论】:

以上是关于如何在 Android 中保存数据的主要内容,如果未能解决你的问题,请参考以下文章

Android登录后的用户数据如何保存,Android如何保存数据

android 如何获取保存的图片的地址 并存到数据库中

如何在 Android 上将数据保存到文本文件?

如何永久保存数据,以便稍后在 Android 中访问?

如何在 Android 中保存数据

如何在 Android 手机中查看保存的数据文件