欢迎来到天天文库
浏览记录
ID:27716171
大小:253.50 KB
页数:5页
时间:2018-12-05
《android五种存储方式》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、文件,sharedPreference,SQLite,网络,ContentProviderPreference,File,DataBase这三种方式分别对应的目录是/data/data/PackageName/Shared_Pref,/data/data/PackageName/files,/data/data/PackageName/database。在Android中通常使用File存储方式是用Context.openFileOutput(StringfileName,intmode)和Context
2、.openFileInput(StringfileName)。Context.openFileOutput(StringfileName,intmode)生成的文件自动存储在/data/data/PackageName/files目录下,其全路径是/data/data/PackageName/files/fileName。注意下,这里的参数fileName不可以包含路径分割符(如"/")。通常来说,这种方式生成的文件只能在这个apk内访问。但这个结论是指使用Context.openFileInput(St
3、ringfileName)的方式。使用这种方式,每个apk只可以访问自己的/data/data/PackageName/files目录下的文件,原因很简单,参数fileName中不可以包含路径分割符,Android会自动在/data/data/PackageName/files目录下寻找文件名为fileName的文件。一:使用SharedPreferences存储数据首先说明SharedPreferences存储方式,它是Android提供的用来存储一些简单配置信息的一种机制,例如:登录用户的用户名与密码
4、。其采用了Map数据结构来存储数据,以键值的方式存储,可以简单的读取与写入,具体实例如下:voidReadSharedPreferences(){StringstrName,strPassword;SharedPreferencesuser=getSharedPreferences(“user_info”,0);strName=user.getString(“NAME”,””);strPassword=usergetString(“PASSWORD”,””);}voidWriteSharedPrefere
5、nces(StringstrName,StringstrPassword){SharedPreferencesuser=getSharedPreferences(“user_info”,0);user.edit();user.putString(“NAME”,strName);user.putString(“PASSWORD”,strPassword);user.commit();}voidsave(Stringname,Integerage){SharedPreferencespreferences=c
6、ontext.getSharedPreferences("test",Context.MODE_PRIVATE);Editoreditor=preferences.edit();editor.putString("name",name);editor.putInt("age",age);editor.commit();}数据读取与写入的方法都非常简单,只是在写入的时候有些区别:先调用edit()使其处于编辑状态,然后才能修改数据,最后使用commit()提交修改的数据。实际上SharedPreferenc
7、es是采用了XML格式将数据存储到设备中,在DDMS中的FileExplorer中的/data/data//shares_prefs下。以上面的数据存储结果为例,打开后可以看到一个user_info.xml的文件,打开后可以看到:moandroidSharedPreferences
8、使用SharedPreferences是有些限制的:只能在同一个包内使用,不能在不同的包之间使用。二:文件存储数据文件存储方式是一种较常用的方法,在Android中读取/写入文件的方法,与Java中实现I/O的程序是完全一样的,提供了openFileInput()和openFileOutput()方法来读取设备上的文件。FilterInputStream,FilterOutputStream等可以到Javaiopa
此文档下载收益归作者所有