//MyFileOperate.h
- #ifndef __MY_FILE_OPERATE_H__
- #define __MY_FILE_OPERATE_H__
-
- #include <f32file.h>
-
-
- class CMyFileOperate
- {
- public:
- static CMyFileOperate* NewL(const TDesC &aName, TUint aFileMode = EFileWrite);
- ~CMyFileOperate();
-
- public:
- TInt Read(TDes8 &aDes, TInt aLength);
- TInt Seek(TSeek aMode, const TInt &aPos);
- TInt Write(const TDesC8 &aDes);
- TInt Write(const TDesC8 &aDes, TInt aLength);
- TInt Size();
- TInt CleanContent();
-
- protected:
- CMyFileOperate();
- void ConstructL(const TDesC &aName, TUint aFileMode);
-
- protected:
- RFs iFs;
- RFile iFile;
- };
- #endif//__MY_FILE_OPERATE_H__
//MyFileOperate.cpp
- #include "MyFileOperate.h"
-
- CMyFileOperate* CMyFileOperate::NewL(const TDesC &aName, TUint aFileMode)
- {
- CMyFileOperate* self=new(ELeave)CMyFileOperate();
- self->ConstructL(aName, aFileMode);
- return self;
- }
-
- void CMyFileOperate::ConstructL(const TDesC &aName, TUint aFileMode)
- {
- iFs.Connect();
-
- iFs.MkDirAll(aName);
-
- if ( KErrNone != iFile.Open(iFs, aName, aFileMode))
- {
- iFile.Create(iFs, aName, aFileMode);
- }
- }
-
- CMyFileOperate::~CMyFileOperate()
- {
- iFile.Close();
- iFs.Close();
- }
-
- CMyFileOperate::CMyFileOperate()
- {
- }
-
- TInt CMyFileOperate::Read(TDes8 &aDes, TInt aLength)
- {
- return iFile.Read(aDes, aLength);
- }
-
- TInt CMyFileOperate::Seek(TSeek aMode, const TInt &aPos)
- {
- TInt pos = aPos;
- return iFile.Seek(aMode, pos);
- }
-
- TInt CMyFileOperate::Write(const TDesC8 &aDes)
- {
- return iFile.Write(aDes);
- }
-
- TInt CMyFileOperate::Write(const TDesC8 &aDes, TInt aLength)
- {
- return iFile.Write(aDes, aLength);
- }
-
- TInt CMyFileOperate::Size()
- {
- TInt size = 0;
-
- if (KErrNone == iFile.Size(size))
- {
- return size;
- }
-
- return -1;
- }
-
- TInt CMyFileOperate::CleanContent()
- {
- return iFile.SetSize(0);
- }
(zj41342626) |