导航:首页 > 软件资讯 > 关闭app后数据保存在哪里

关闭app后数据保存在哪里

发布时间:2023-07-29 04:58:07

1. 关于app的数据保存

在开发过程中,我们需要将某些数据保存下来,比如一些设置信息以及一些用户主动去保存的数据。待用户下次打开应用时候,再自动加载这些信息。下面将介绍windows8开发中如何存储数据。一.本地数据存储在wp中我们使用IsolatedStorageSettings进行本地数据存储,在win8中也提供类似的方法进行存储,我们使用ApplicationData.Current.LocalSettings。下面将通过实例进行描述:在节目上添加姓名、年龄、性别三个控件,代码如下:1234567891011121314男15女161718192021222324新建类AppDataHelper.cs,引用命名空间usingWindows.Storage。我们将读取和保存封装成共通,方便调用。保存数据:1///2///保存数据3///4///数据类型5///键6///值7publicstaticvoidSave(stringkey,Tvalue)8{9ApplicationData.Current.LocalSettings.Values[key]=value;10}读取数据:1///2///读取数据3///4///数据类型5///键6///值7publicstaticTRead(stringkey)8{9if(ApplicationData.Current.LocalSettings.Values.ContainsKey(key))10{11return(T)ApplicationData.Current.LocalSettings.Values[key];12}13else14{15returndefault(T);16}17}删除数据:1///2///移除数据3///4///键5///成功true/失败false6publicstaticboolRemove(stringkey)7{8returnApplicationData.Current.LocalSettings.Values.Remove(key);9}我们只要在需要存储或者读取数据的地方进行调用,就可以了。1privatevoidbtnSave_Click(objectsender,RoutedEventArgse)2{3AppDataHelper.Save("name",txtName.Text.Trim());4AppDataHelper.Save("age",int.Parse(txtAge.Text.Trim()));5AppDataHelper.Save("sex",cbxSex.SelectedIndex);6}7privatevoidbtnRead_Click(objectsender,RoutedEventArgse)8{9txtName.Text=AppDataHelper.Read("name");10txtAge.Text=AppDataHelper.Read("age").ToString();11cbxSex.SelectedIndex=AppDataHelper.Read("sex");12}那么我们保存的数据保存到哪里去了呢?我们应该如何找到他们,别急,我们下面开始找保持的数据。打开C:\Users\\AppData\Local\Packages\\Settings\settings.dat,user_name对应当前登录的用户名,packpage对应此应用的唯一标识,在Package.appxmanifest中我们可以找到它:此文件为.dat后缀,我们需要用注册表工具打开它,开始->运行(win+R键),输入Regedit,在打开的窗口里面选择HKEY_LOCAL_MACHINE,然后选择文件->加载配置单元,选择settings.dat文件,打开填入项名称,确定之后可以看到保存的数据会显示在其中。双击name,打开,我们可以看到存储的数据值。那么我们是否能像wp那样存储一个对象到本地存储呢,答案是否定的。win8中只能存储一些简单类型,如int、bool、string等下面有一个Person对象:1[DataContract]2publicclassPerson3{4[DataMember]5publicstringName{get;set;}6[DataMember]7publicintAge{get;set;}8[DataMember]9publicintSex{get;set;}10}进行存储:1Personperson=newPerson()2{3Name=txtName.Text.Trim(),4Age=int.Parse(txtAge.Text.Trim()),5Sex=cbxSex.SelectedIndex6};7AppDataHelper.Save("person",person);此时会报错,提示不支持此类型存储。那么我们应该如何存储一个对象呢?下面我们将介绍文件存储。二.文件存储对于那些比较复杂的数据类型,我们需要将其存储为文件的形式存储在应用中。StorageFile的存储,以文件的形式进行存储存入数据。新建一个类,LocalFileHelper.cs存储文件:1///2///存储数据///3///数据类型4///文件名称5///数据6///无7publicasyncstaticTaskSave(stringfileName,Tdata)8{9//取得当前程序存放数据的目录10StorageFolderfolder=Windows.Storage.ApplicationData.Current.LocalFolder;11//创建文件,如果文件存在就覆盖12StorageFilefile=awaitfolder.CreateFileAsync(fileName,CreationCollisionOption.ReplaceExisting);13using(StreamnewFileStream=awaitfile.OpenStreamForWriteAsync())14{15DataContractSerializerser=newDataContractSerializer(typeof(T));16ser.WriteObject(newFileStream,data);17newFileStream.Dispose();18}19}读取文件:1///2///读取数据3///4///数据类型5///文件名称6///数据7publicasyncstaticTaskRead(stringfileName)8{9Tt=default(T);10try11{12StorageFolderfolder=Windows.Storage.ApplicationData.Current.LocalFolder;13StorageFilefile=awaitfolder.GetFileAsync(fileName);14if(file==null)15returnt;16StreamnewFileStream=awaitfile.OpenStreamForReadAsync();17DataContractSerializerser=newDataContractSerializer(typeof(T));18t=(T)ser.ReadObject(newFileStream);19newFileStream.Dispose();20returnt;21}22catch(Exception)23{24returnt;25}26}删除文件:1///2///删除文件3///4///文件名称5///成功true/失败(stringfileName)7{8StorageFolderfolder=Windows.Storage.ApplicationData.Current.LocalFolder;9StorageFilefile=awaitfolder.GetFileAsync(fileName);10if(file!=null)11{12try13{14awaitfile.DeleteAsync();15}16catch(Exception)17{18returnfalse;19}20}21returntrue;22}使用方法:1Personperson=newPerson()2{3Name=txtName.Text.Trim(),4Age=int.Parse(txtAge.Text.Trim()),5Sex=cbxSex.SelectedIndex6};78awaitLocalFileHelper.Save("person.xml",person);910Listlist=newList();11list.Add(person);12list.Add(person);13awaitLocalFileHelper.Save("personList.xml",list);141516PersonnewPerson=awaitLocalFileHelper.Read("person.xml");17ListpersonList=awaitLocalFileHelper.Read("personList.xml");文件在哪里?同样我们打开C:\Users\user_name\AppData\Local\Packages\package\LocalState文件夹,下面就有我们保持的文件,打开文件,保存文件的内容格式为xml:27BetterChaner0三.使用Sqlite进行数据存储Sqlite现已提供对WindowsRT和Windows8Metro应用的支持.首先,在工具,选择扩展与更新中,选择联机,在搜索框内输入sqlite,找到SQLiteforWindowRuntime,下载安装。安装完成之后重启VS,右击项目添加引用,选择Windows->扩展,找到Mircosoftvisualc++runtimepackage和sqliteforwindowsruntime,打勾,确定。由于目前Sqlite不支持AnyCPU,所以我们将项目改成X64,右击解决方案,属性,修改之。然后右击引用,选择管理Nuget程序包,联机搜索sqlite-net,下载安装。我们发现项目工程中多了2个类文件,SQLite.cs和SQLiteAsync.cs基本操作:1//创建数据库2stringdbRootPath=Windows.Storage.ApplicationData.Current.LocalFolder.Path;3SQLiteConnectiondb=newSQLiteConnection(Path.Combine(dbRootPath,"myApp.sqlite"));45//创建表6db.CreateTable();78//插入一条数据9db.Insert(newPerson(){Name="BetterChaner",Age=27,Sex=1});1011//插入多条数据12Listlist=newList();13list.Add(newPerson(){Name="Zhangsan",Age=27,Sex=1});14list.Add(newPerson(){Name="Lisi",Age=32,Sex=0});15list.Add(newPerson(){Name="Wangwu",Age=24,Sex=1});16db.InsertAll(list);1718//查询数据19Listlist2=db.Query("select*fromPerson");2021//更新数据22SQLiteCommandcmd=db.CreateCommand("updatePersonsetAge=21whereName='Lisi'");23cmd.ExecuteNonQuery();2425//删除一条数据26db.Delete(newPerson(){Name="Zhangsan",Age=27,Sex=1});27//删除全部数据28db.DeleteAll();数据存储的位置为:C:\Users\\AppData\Local\Packages\\LocalState\文件夹下的myApp.sqlite四.SqlCE有了Sqilte,SqlCE不太经常会用到了,在这里就不写出实例了,与wp中类似。小结以上为windowsstoreapp开发中可以使用的几种存储数据的方式,可以根据数据大小、作用以及类型选择应该使用哪一种存储方式。

2. 怎样找到安卓手机app应用数据所在的位置

打开文件管理,依次点击【分类】>>【应用】。选择要查看的app,例如“网络”,然后长按。点击底部的【详情】,即可看到app的存储位置。

工具/原料:

华为手机荣耀Play4T Pro

Android版本10

1、打开文件管理。

3. iphone手机app数据放在哪里

iPhone是美国苹果公司旗下研发的智能手机系列,它搭载苹果公司研发的iOS手机作业系统。那么我们在上面下载的文件存在哪里哪里,下面就来说一下文件储存在哪。

工具/原料

4. 小程序数据存放在哪里

小程序数据存放的位置是:

1、小程序数据存放在哪里是分情况的,对于短生命周期数据存储来说,主要是以小程序启动到彻底关闭为周期的数据,会存储在app.js文件夹中。

2、而对于长生命周期或者隐私数据存储来说,小程序关闭后即便再重启数据依旧会存在的,或者说涉及到用户的隐私肆春源信息并且需要重复使用,因此数据是存数在本地缓存的。

3、对于动态信息或配置信息存储来说,这种小程序是需要保存用户的配置信息的,而且在用户更换了手机之裂态后森脊也是能够迅速完成配置同步的,因此数据是保存在后端服务器中的。

资料拓展:2016年1月11日,2016微信公开课PRO版在广州举行,“微信之父”张小龙首次公开演讲,宣布微信公众号将推出“应用号”,通过公众号完成一些App的部分功能。2016年11月3日晚间,微信团队宣布:微信小程序正式开放公测。

5. 安卓手机里的软件的数据是存储在哪的

1、安卓系统手机默认只能把软件安装在手机内存里;
2、手机ROM相当于PC上的硬盘,用于存储手机操作系统和软件,也叫FLASH
ROM,决定手机存储空间的大小。手机RAM相当于PC的内存,其大小决定手机的运行速度;
3、Android系统中把软件安装到SD卡上,比这还简单,两步就够了:
第一步、存储卡分区
需要对手机SD卡进行分区,分一个FAT32分区和一个Ext3分区,FAT32分区用于正常存储图片、音乐、视频等资料,而Linux格式的Ext3分区就是用于扩容安装软件的分区。
第二步、将软件移动到SD卡
需要把系统默认的软件安装目录/data/app转移到SD卡的Ext3分区上,通过ln命令建立软链接,使系统自动把软件安装到SD卡上,达到节省手机内存空间的目的。
将存储卡装回手机,重新启动,使系统识别到Ext3分区。
4、在手机上运行超级终端,依次输入以下命令来验证系统是否识别了Ext3分区:
su
(会提示高级权限授权,选择“总是同意”)
busybox
df
–h
如果显示的列表中有/dev/block/mmcblk0p2的信息说明系统已成功识别了Ext3分区。
然后依次输入以下命令将/data/app目录转移到SD卡的Ext3分区:
cp
–a
/data/app
/system/sd/
(将/data/app目录复制到/system/sd/下)
rm
–r
/data/app
(删除/data/app目录)
ln
–s
/system/sd/app
/data/app
(建立软链接)
Reboot
(重启手机)
重启之后,手机上安装的所有软件就全部转移到了SD卡上。
注意:
1.软件移动到SD卡上后,原有的部分桌面插件会无法正常显示,删除后,重新加入桌面即可;
2.SD卡的Ext3分区可以视为手机硬件的一部分,移除SD卡后,安装的软件将无法运行。插入SD卡,重新启动手机即可正常使用。

阅读全文

与关闭app后数据保存在哪里相关的资料

热点内容
去做APP开户有什么危险没得啊 浏览:696
8分之1乘58算法 浏览:170
php提交过滤 浏览:356
豪斯曼检验stata命令 浏览:769
云看地是什么APP 浏览:885
数学指南pdf 浏览:858
phpcurldll64位 浏览:982
程序员脱产一年半 浏览:851
hr招程序员有什么条件 浏览:589
android开源集合 浏览:870
华为云服务器登录密码和账号 浏览:154
中世纪java程序员 浏览:786
什么开发引擎使用python 浏览:176
sh脚本运行命令 浏览:318
广联达加密锁怎么看到期 浏览:174
cad轨迹命令 浏览:981
同事刷到女程序员自媒体视频 浏览:573
校验算法的缺点是什么 浏览:719
PHP商品分类功能实现 浏览:332
php取字符串中间 浏览:432