⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 utility.cpp

📁 实现在S60 SDK 3rd Device上的USB串口通信。
💻 CPP
字号:
/*
 * Utility.cpp
 *
 *  Created on: 2009-3-17
 *      Author: LengQiuhun
 */

#include <eikenv.h>
#include <eikapp.h>
#include <eikappui.h>
#include <CHARCONV.H>
#include <f32file.h>

#include "Utility.h"

_LIT(KMbmFileName, "Ku6Client.mbm");

CUtility::CUtility()
	{
	// TODO Auto-generated constructor stub

	}

CUtility::~CUtility()
	{
	// TODO Auto-generated destructor stub
	}

TFileName CUtility::GetMbmFileFullPath()
	{
	CEikonEnv* eikonEnv = CEikonEnv::Static();
	TFileName appFile = eikonEnv->EikAppUi()->Application()->BitmapStoreName();
	TFileName mbmFile = appFile.Left(appFile.LocateReverse('\\') + 1);
	mbmFile.Append(KMbmFileName);
	return mbmFile;
	}

// get CEikApplication object
CEikApplication* CUtility::GetEikAppObject()
	{
	CEikonEnv* eikonEnv = CEikonEnv::Static();
	return eikonEnv->EikAppUi()->Application();
	}

void CUtility::ConvGbk2Uni(TDes16& aTarget, const TDesC8& aSource)
	{
	CCnvCharacterSetConverter *converter = CCnvCharacterSetConverter::NewLC();
	if (converter->PrepareToConvertToOrFromL(KCharacterSetIdentifierGbk,
			CEikonEnv::Static()->FsSession())
			!= CCnvCharacterSetConverter::EAvailable)
		{
		User::Leave(KErrNotSupported);
		}
	TInt state = CCnvCharacterSetConverter::KStateDefault;
	converter->ConvertToUnicode(aTarget, aSource, state);
	CleanupStack::PopAndDestroy();
	}

void CUtility::ConvUni2Gbk(TDes8& aTarget, const TDesC16& aSource)
	{
	CEikonEnv* eikonEnv = CEikonEnv::Static();
	TInt state = CCnvCharacterSetConverter::KStateDefault;
	CCnvCharacterSetConverter* iConv;
	iConv = CCnvCharacterSetConverter::NewLC();
	if (iConv->PrepareToConvertToOrFromL(KCharacterSetIdentifierGbk,
			eikonEnv->FsSession()) != CCnvCharacterSetConverter::EAvailable)
		User::Leave(KErrNotSupported);
	iConv->ConvertFromUnicode(aTarget, aSource, state);
	CleanupStack::PopAndDestroy();
	}

⌨️ 快捷键说明

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