`
izuoyan
  • 浏览: 9218623 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Symbian中ini文件的使用

阅读更多

原文地址:http://www.goodod.com/html/68/bencandy_9415.htm

如果程序中需要配置文件(如保存进度,声音等)那可以使用ini文件来处理,同MFC一样也有专门处理配置文件的API,这就是OpenIniFileLC(RFs&aFs)。

首要的一条,你的程度要支持ini文件,那就要重载这个CEikApplication的成员函数,否则程序执行起来会报错,而重载时只要如下语句即可:
CDictionaryStore*CMyApp::OpenIniFileLC(RFs&aFs)const

returnCEikApplication::OpenIniFileLC(aFs);


这样的话,程序可以在你启动时自动的创建一个ini——如果检测到没有的情况下。而这个ini一般是创建在C:\System\App\MyApp目录下的,注意即使用户选择安装在E盘,那还是会把ini安装在系统盘上,SDK说明这个默认盘符是放在KIniFileDrive里,但我还没有找到办法如何去修改它,如果你知道了告诉我一声哦:)

一般配制文件要供全局使用,可能要跨越多个view,因此我们把它的操作及数据定义在UI级别,在MyAppUi的ConstructL()函数中有如下语句:

//处理基本的数据
deleteiMyConfig;
iMyConfig=CMyConfigData::NewL();

CDictionaryStore*store=Application()->OpenIniFileLC(iCoeEnv->FsSession());
if(store->IsPresentL(KUidKey))

LoadIniFile(store);

else

iMyConfig->SetDefault();
SaveIniFile(store);

CleanupStack::PopAndDestroy();
//--结束处理

voidCMyAppUi::SaveIniFile(CDictionaryStore*aStore)

RDictionaryWriteStreamout;
out.AssignLC(*aStore,KUidKey);
out<<*iMyConfig;
out.CommitL();
CleanupStack::PopAndDestroy();
aStore->CommitL();



voidCAknExSettingListAppUi::LoadIniFile(CDictionaryStore*aStore)

RDictionaryReadStreamin;
in.OpenLC(*aStore,KUidKey);
in>>*iMyConfig;
CleanupStack::PopAndDestroy();


当然具体的CMyConfigData里还要有一些相应的导入导出处理,这样才完美:)

有时候我们还需要在程序中处理一下配置的保存,那我们可以使用如下代码(在view中):
CDictionaryStore*IniFile=AppUi()->Application()->OpenIniFileLC(CCoeEnv::Static()->FsSession());

RDictionaryWriteStreamWriteStream;
WriteStream.AssignLC(*IniFile,KUidKey);
WriteStream<<*iData;
WriteStream.CommitL();
CleanupStack::PopAndDestroy();

IniFile->CommitL();
CleanupStack::PopAndDestroy();
把它放在一个函数中即可:)

最后要说明的是,如果不在pkg里有明确说明,那保存在系统盘上的ini在程序被删除后是不会丢失的,这就造成了垃圾文件,我们只需要在pkg中加入下面一句就可以彻底删除这些:
;RemoveINIfilewhenuninstallingtheapp.
""-"C:\system\apps\MyApp\MyApp.ini",FN
FN表明这个文件在程序运行时才生成,现在为空。前面用的是“”。

分享到:
评论

相关推荐

    Symbian文档类读写文件和读写Ini文件样例源代码

    以上就是Symbian操作系统中使用文档类进行文件读写的基本方法,以及处理Ini文件的实例。这些功能在S60 3rd平台上非常实用,可以帮助开发者创建能够存储和读取数据的应用程序。在实际项目中,你可能需要根据具体需求...

    symbian操作配置(ini)文件

    - 尽量避免在.ini文件中存储敏感信息,如密码或用户隐私数据。 - 确保正确处理读写失败的情况,如文件不存在或权限不足。 - 使用适当的编码,通常Symbian系统默认支持UTF-8编码。 通过了解和熟练运用这些知识点...

    资源pkg文件解包工具

    资源pkg文件解包工具是一种专门针对pkg格式文件的软件,主要应用于Symbian OS系统中的安装包处理。pkg文件本质上是安装包配置文件,它包含了应用程序的所有必要信息,如文件列表、版本信息、权限设置等,是构建...

    symbian 安装文档及常见错误

    c) 控制台输出调试信息:修改epoc.ini文件,启用LogToFile和LogToDebugger,然后在mmp文件中添加ecrt0库,通过`#include &lt;e32debug.h&gt;`头文件使用RDebug::Print进行调试输出。 d) 解决“rsg”文件找不到的问题:通过...

    塞班助手v2.2007.zip

    塞班助手使用教程.rtf文件则是为用户提供详细的刷机指南,帮助用户理解如何操作软件,避免在刷机过程中出现错误。RTF(Rich Text Format)是一种通用的文本格式,可以跨平台阅读,确保用户无论使用何种操作系统都能...

    塞班手机软件

    【塞班手机软件】是关于诺基亚塞班(Symbian)操作系统上应用软件的讨论,这个系统曾经是智能手机市场的主导者,特别是在2000年代至2010年代初。塞班平台以其开放性和强大的功能吸引了大量的开发者,为用户提供了...

    nfe 塞班固件解包工具 带校验版

    在塞班系统中,固件通常包含一系列的文件和配置,决定了手机的性能和功能。而解包工具就是用来将这些固件文件从其原始打包状态恢复为可编辑的原始格式,便于用户进行定制或修复。 "NokiaFirmwareEditor.exe"是这个...

    EasySignPlus_v1.1_CHS_DemsonOPDA sis,sisx文件的签名软件

    在移动设备特别是早期的塞班系统(Symbian)中,sis和sisx文件是常见的应用安装包格式。这些文件需要经过签名才能在手机上安装和运行,以确保软件来源的安全性和合法性。EasySignPlus_v1.1_CHS_DemsonOPDA就是这样一款...

    makesis.exe使用方法

    1. **下载并生成INI文件**:首先,通过服务器端的操作生成相应的`.ini`文件,用于定义软件包的基本信息和配置。 2. **生成与配置PKG文件**:接着,根据`.ini`文件的内容生成`.pkg`文件,并对其进行适当的配置。这...

    python手机应用iniReader发布

    在Windows操作系统中,.ini文件非常常见,但Python的应用能够跨平台运行,因此iniReader可能也适用于其他操作系统,尤其是通过兼容性层或者被封装到特定的移动平台上。 【描述】:“NULL 博文链接:...

    symbian常用类对应头文件和lib

    下面将详细介绍在给定文件中提到的一些常用的Symbian类、它们对应的头文件以及相关的库文件。 #### 1. **字符数组类** - **CDesC16Array**: 用于存储和操作Unicode (UCS-2) 字符的动态数组。它提供了添加、删除、...

    在carbide 2.0+symbian 3rd下如何运行控制台程序

    2. **修改配置文件**:定位到项目的`epoc32/data/epoc.ini`文件,编辑它以适应控制台程序的需求。这可能包括添加或更新特定的配置参数,以指示程序应以文本模式运行。 3. **配置运行环境**:在Carbide 2.0的“Run ...

    sis解包软件extsis

    【sis解包软件extsis】是一款专为塞班系统(Symbian)设计的应用程序,主要用于解析和编辑sis格式的软件。Sis是一种在早期智能手机,尤其是诺基亚手机上广泛使用的应用程序安装包格式。这款工具能够帮助用户深入了解...

    电脑端超强SIS解包打包软件

    SIS是一种常见的塞班系统(Symbian OS)应用程序安装包格式,尤其在诺基亚手机中广泛使用。SISX是SIS格式的升级版,用于S60第三版(S60v3)和第五版(S60v5)平台,这两个版本分别代表了塞班操作系统在智能手机发展...

    控制台的调试

    【控制台调试】在Symbian开发环境中,调试控制台程序是开发者经常遇到的任务,尤其在Carbide.symbian 3rd版本下。这里主要介绍三种方法来解决程序编译后无法运行或调试的问题。 **第一种方法:修改epoc文件** 1. 在...

    euig.rar_源码

    至于&_desktop.ini_,这通常是Windows系统中的一个桌面配置文件,可能记录了文件夹的显示属性,对于源代码项目来说,它的作用可能不大。 总的来说,"euig.rar_源码"是一个珍贵的学习资源,它揭示了在资源有限的移动...

    6680皮肤

    总之,6680皮肤是一种让用户能够在非6680设备上体验6680手机界面的设计,通过6680.ZIP压缩包中的6680.bmp和epoc.ini文件实现。用户可以根据指示安装并应用这些文件,从而在模拟器中享受复古的6680风格。这种技术不仅...

    Nokia Firmware Editor

    4. **语言定制**:lang.ini文件可能与软件的语言设置有关,用户可以通过编辑此文件来添加或更改设备支持的语言。 5. **临时文件管理**:"temp"目录可能用于存放解包和打包过程中产生的临时文件,这些文件在操作完成...

    蓝牙上网(蓝点)

    对于像塞班系统(Symbian)手机5250(s60v5)这样的设备,已经证实可以通过蓝牙实现上网功能。 【蓝牙适配器】 蓝牙适配器是将非蓝牙设备转化为能够支持蓝牙通信的设备的关键硬件。它通常是一个USB插件,插入电脑的...

    Sybian操作系统详解

    在使用Symbian操作系统的过程中,磁盘管理是非常重要的一个环节,尤其是对于经常需要进行软件安装或卸载的用户来说。合理的磁盘管理能够帮助用户更好地利用有限的存储资源。 - **格机操作**:如果遇到系统频繁崩溃...

Global site tag (gtag.js) - Google Analytics