WEB开发网
开发学院手机开发Symbian 开发 Symbian程序开发中文件操作小结 阅读

Symbian程序开发中文件操作小结

 2010-08-20 01:51:00 来源:WEB开发网   
核心提示:CFileManLocation: f32file.hLink against: efsrv.lib以上两个类本质上是对一个CFileMan的封装,FileMan==FileManager,Symbian程序开发中文件操作小结(2),提供了Copy、Delete、Move、 Attribs(改文件属性)等方法,通过Ne

CFileMan

Location: f32file.h

Link against: efsrv.lib

以上两个类本质上是对一个CFileMan的封装。FileMan==FileManager,提供了Copy、Delete、Move、 Attribs(改文件属性)等方法,通过NewL(RFs&)方法可以构造一个CFileMan,然后就可以通过它来操作文件了。

CFileMan::NewL()有一个重载版本支持传入一个MFileManObserver指针作为参数,或者可以通过SetObserver()设定观察者,利用这个观察者可以监视文件状况,以便对特定文件的复制、删除等操作进行响应。

RFs

Location: f32file.h

文件操作当然不能不提RFs咯,这么重量级别的人物。

个人理解EikFileUtils、BaflUtils都是通过RFs来调用CFileMan操作文件,这里面的关系还真TMD错综复杂啊,不过咱小程序员一个,不必深究太多,能用则用呗。RFs提供的方法真是多得吓人,应有那个尽有。我就不?嗦了,自己查API Doc去。

TParse/TParsePtr/TParsePtrC

Location: f32file.h

Link against: efsrv.lib

这又是一系列好玩又方便的类。后两个最好用,以TParsePtr为例:

其构造函数TParsePtr(TDes&)接受一个TDes引用作为参数,可以对这个TDes进行一系列的判断及操作。可以往这个TDes中追加文件夹、分离文件名、分离后缀名等等实用的操作。这样就不用大费周章地自己进行描述符操作,就能很智能地处理文件路径了,是不是很酷呢?

而TParsePtrC(TDesC&)除了不能用那些修改文件名的函数,其余功能和TParsePtr一致(所有的函数都定义在基类TParseBase中)。

文件操作当然包含文件读写咯,在此也作一下整理。

TFileText

Location: f32file.h

Link against: efsrv.lib

这个类是我最喜欢用的,因为它够简洁够方便。

处理单行的文本文件读写(单行最大256个字符),文件编码必须是UTF-16 LE。

提供的函数也少得可怜:Read(), Seek(), Set(), TFileText(), Write() 其中还有一个是默认构造函数,真是可怜无比。但是很实用就是了,在做Console Exe的时候,用这个类来读写文件那是相当爽快。没有调研过控制台程序是否也有支持ini文件的API,但是自己用TFileText写一个读写ini文件的类也是很方便的事。

伪代码如下:

Tags:Symbian 程序开发 文件

编辑录入:coldstar [复制链接] [打 印]
赞助商链接