首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Android>文件与SQLite

Android>文件与SQLite
EN

Stack Overflow用户
提问于 2013-09-18 09:27:04
回答 2查看 226关注 0票数 0

我必须保存我的应用程序的设置,但是我不知道我应该使用文件还是表。我不需要与其他应用程序共享它们,这些设置只是3-4个布尔人用来记住应用程序以某种方式或另一种方式执行操作的。仅仅为3-4个值创建一个表是个好主意吗?还是应该使用文件而不是小文件?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-09-18 09:34:21

如果这是一个在应用程序中存储3-4值的问题,那么我建议使用SharedPreference

您可以存储和检索Sharedpreferences,如下所示:

可以使用getSharedPreferences() method.The获取应用程序共享首选项,下面的代码可用于获取应用程序共享首选项。

代码语言:javascript
运行
复制
   SharedPreferences pref = getApplicationContext().getSharedPreferences(
                       "any_prefname", MODE_PRIVATE);

共享首选项的可用模式:

代码语言:javascript
运行
复制
MODE_WORLD_READABLE
MODE_WORLD_WRITEABLE 
MODE_PRIVATE

用于编辑共享首选项值,我们需要编辑器来编辑和保存共享首选项中的更改。

代码语言:javascript
运行
复制
  Editor editor = pref.edit();

并使用commit()进行数据存储。

代码语言:javascript
运行
复制
  Editor.commit();

可以使用编辑器将数据保存到共享首选项中。支持所有原始数据类型,如布尔值、浮点数、ints、longs和字符串。调用editor.commit()以保存对共享首选项的更改。

代码语言:javascript
运行
复制
          editor.putBoolean("key_name", true); // Storing boolean - true/false
          editor.putString("key_name", "string value"); // Storing string
          editor.putInt("key_name", "int value"); // Storing integer
          editor.putFloat("key_name", "float value"); // Storing float
          editor.putLong("key_name", "long value"); // Storing long
          editor.commit(); // commit changes

从共享首选项获取数据:

可以通过调用getString() (用于字符串) method.For boolean getBoolean()从保存的首选项中检索数据。记住,应该在共享首选项上调用此方法,而不是在编辑器上。

代码语言:javascript
运行
复制
    // returns stored preference value
    // If value is not present return second param value - In this case null

          pref.getString("key_name", null); // getting String
          pref.getInt("key_name", null); // getting Integer
          pref.getFloat("key_name", null); // getting Float
          pref.getLong("key_name", null); // getting Long
          pref.getBoolean("key_name", null); // getting boolean

删除共享偏好中的数据,并删除共享偏好:

要从共享首选项中删除数据,我们可以使用remove(“key_name”).If删除所有数据,调用clear()

代码语言:javascript
运行
复制
editor.remove("student_name");//will delete student_name
editor.commit(); 

下面将清除共享首选项中的所有数据

代码语言:javascript
运行
复制
editor.clear();
editor.commit();
票数 3
EN

Stack Overflow用户

发布于 2013-09-18 09:29:42

您将在这里获得详细信息-http://developer.android.com/guide/topics/data/data-storage.html使用sharedPref来保存应用程序设置,而不是文件和sqLite。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18868511

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档