dirinfo.cpp

来自「symbian手机加密记事本」· C++ 代码 · 共 187 行

CPP
187
字号
#include "DirInfo.h"

void CDirInfo::ConstructL()
{
}

CDirInfo::CDirInfo()
{
// 	iName = NULL;
// 	iFileTime = NULL;
	iFileTitle = NULL;
	iFileContext = NULL;
}

// const TDesC& CDirInfo::GetFileTime() const
// {
// 	return *iFileTime;
// }

const TDesC& CDirInfo::GetFileTitle() const
{
	return *iFileTitle;
}

const TDesC& CDirInfo::GetFileConstext() const
{
	return *iFileContext;
}

// void CDirInfo::SetInfoL(const TDesC& aName,const TDesC& aFileTime,
// 						const TDesC& aFileTitle,const TDesC& aFileContext)
void CDirInfo::SetInfoL(const TDesC& aFileTitle,const TDesC& aFileContext)
{
// 	if(iName)
// 	{
// 		delete iName;
// 		iName = NULL;
// 	}
// 	iName = HBufC::NewL(aName.Length());
// 	iName->Des().Copy(aName);
// 
// 	if(iFileTime)
// 	{
// 		delete iFileTime;
// 		iFileTime = NULL;
// 	}
// 	iFileTime = HBufC::NewL(aFileTime.Length());
// 	iFileTime->Des().Copy(aFileTime);

	if(iFileTitle)
	{
		delete iFileTitle;
		iFileTitle = NULL;
	}
	iFileTitle = HBufC::NewL(aFileTitle.Length());
	iFileTitle->Des().Copy(aFileTitle);

	if(iFileContext)
	{
		delete iFileContext;
		iFileContext = NULL;
	}
	iFileContext = HBufC::NewL(aFileContext.Length());
	iFileContext->Des().Copy(aFileContext);
}

void CDirInfo::InternalizeL(RReadStream& aStream)
{
// 	TInt nLen = aStream.ReadInt32L();
// 	if(nLen > 0)
// 	{
// 		if(iName)
// 		{
// 			delete iName;
// 			iName = NULL;
// 		}
// 		iName = HBufC::NewL(nLen);
// 		TPtr ptr = iName->Des();
// 		aStream >> ptr;
// 	}
// 	
// 	nLen = aStream.ReadInt32L();
// 	if(nLen > 0)
// 	{
// 		if(iFileTime)
// 		{
// 			delete iFileTime;
// 			iFileTime = NULL;
// 		}
// 		iFileTime = HBufC::NewL(nLen);
// 		TPtr ptr = iFileTime->Des();
// 		aStream >> ptr;
// 	}

	TInt nLen = aStream.ReadInt32L();
	if(nLen > 0)
	{
		if(iFileTitle)
		{
			delete iFileTitle;
			iFileTitle = NULL;
		}
		iFileTitle = HBufC::NewL(nLen);
		TPtr ptr = iFileTitle->Des();
		aStream >> ptr;
	}

	nLen = aStream.ReadInt32L();
	if(nLen > 0)
	{
		if(iFileContext)
		{
			delete iFileContext;
			iFileContext = NULL;
		}
		iFileContext = HBufC::NewL(nLen);
		TPtr ptr = iFileContext->Des();
		aStream >> ptr;
	}
}
void CDirInfo::ExternalizeL(RWriteStream& aStream)
{
// 	if(iName)
// 	{
// 		aStream.WriteInt32L(iName->Length());
// 		aStream << iName->Des();
// 	}
// 	else
// 	{
// 		aStream.WriteInt32L(0);
// 	}
// 
// 	if(iFileTime)
// 	{
// 		aStream.WriteInt32L(iFileTime->Length());
// 		aStream << iFileTime->Des();
// 	}
// 	else
// 	{
// 		aStream.WriteInt32L(0);
// 	}

	if(iFileTitle)
	{
		aStream.WriteInt32L(iFileTitle->Length());
		aStream << iFileTitle->Des();
	}
	else
	{
		aStream.WriteInt32L(0);
	}

	if(iFileContext)
	{
		aStream.WriteInt32L(iFileContext->Length());
		aStream << iFileContext->Des();
	}
	else
	{
		aStream.WriteInt32L(0);
	}
}

CDirInfo::~CDirInfo()
{
// 	if(iName != NULL)
// 	{
// 		delete iName;
// 		iName = NULL;
// 	}
// 	if(iFileTime != NULL)
// 	{
// 		delete iFileTime;
// 		iFileTime = NULL;
// 	}
	if(iFileTitle != NULL)
	{
		delete iFileTitle;
		iFileTitle = NULL;
	}
	if(iFileContext != NULL)
	{
		delete iFileContext;
		iFileContext = NULL;
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?