WEB开发网
开发学院手机开发Symbian 开发 Symbian C++ 各种类型之间的转换 阅读

Symbian C++ 各种类型之间的转换

 2010-05-31 19:41:00 来源:WEB开发网   
核心提示:1.TTime转TBuf型TBuf<32> theTime;//存储转换后的时间TTime tt;tt.HomeTime();_LIT(KTimeFormat,"%Y%M%D%1-%2-%3 %H:%T:%S");//格式为:2006-03-04 12:12:12tt.FormatL(t

1.TTime转TBuf型

TBuf<32> theTime;//存储转换后的时间

TTime tt;

tt.HomeTime();

_LIT(KTimeFormat,"%Y%M%D%1-%2-%3 %H:%T:%S");//格式为:2006-03-04 12:12:12

tt.FormatL(theTime,KTimeFormat);//FormatL()会以KTimeFormat字符串的形式来格式化时间在赋值给theTime

2. TDateTime转TBuf型

TTime currentTime;//声明一个TTime类型

currentTime.HomeTime();//设置TTime为当前时间

TDateTime tdt=currentTime.DateTime();//TTime

---> TDateTime

TBuf<32> tmp;//存储转换完的Buf

tmp.AppendNum(tdt.Year());//用AppendNum()方法将一个Tint加入到TBuf中。

_LIT(gang,"-");//声明一个横线分隔年月日,同样可声明冒号分隔小时分秒

tmp.Append(gang);

tmp.AppendNum(tdt.Month());

tmp.Append(gang);

tmp.AppendNum(tdt.Day());…………时分秒的转换同上

3. TBuf转Tint型

// 15位数字

TInt iNum1(123456789009876);

// 将缓存的内容设置为iNum1

iBuf.Num(iNum1);

// 使用iBuf包含的内容创建TLex对象

// the 15 digit number

TLex iLex(iBuf);

// iNum1

TInt iNum2;

//iNum2现在包含了15位数字

iLex.Val(iNum2);

4. Tint转TBuf型

TBuf<10>tmp;

Tint ti=190;

Tmp.AppendNum(ti);

5. TBuf转TDateTime型

将长的TBuf截成小段,分别是年月日时分秒,通过下面TBuf转TInt ,再分别把转换成TInt的年月日取出,通过TDateTime的setYear(),setMonth()等方法将时间set进TDateTime

6. 其他转换

TBuf 转换为 TPtrC16

TBuf<32> tText(_L("2004/11/05 05:44:00"));

TPtrC16 tPtrSecond=tText.Mid(17,2);

TPtrC16 转换为 TBufC16

TPtrC16 tPtrSecond=tText.Mid(17,2);

TBufC16<10> bufcs(tPtrSecond);

TBufC16 转换为 TPtr16

TBufC16<10> bufcs(tPtrSecond);

1 2 3  下一页

Tags:Symbian 各种 类型

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