Symbian中的类型转换1.TTime转TBuf型TBuf<32>theTime;//存储转换后的时间TTimett;tt.HomeTime();_LIT(KTimeFormat,%Y%M%D%1-%2-%3%H:%T:%S);//格式为:2006-03-0412:12:12tt.FormatL(theTime,KTimeFormat);//FormatL()会以KTimeFormat字符串的形式来格式化时间在赋值给theTime2.TDateTime转TBuf型TTimecurrentTime;//声明一个TTime类型currentTime.HomeTime();//设置TTime为当前时间TDateTimetdt=currentTime.DateTime();//TTime--->TDateTimeTBuf<32>tmp;//存储转换完的Buftmp.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位数字TIntiNum1(123456789009876);//将缓存的内容设置为iNum1iBuf.Num(iNum1);//使用iBuf包含的内容创建TLex对象//the15digitnumberTLexiLex(iBuf);//iNum1TIntiNum2;//iNum2现在包含了15位数字iLex.Val(iNum2);4.Tint转TBuf型TBuf<10>tmp;Tintti=190;Tmp.AppendNum(ti);5.TBuf转TDateTime型将长的TBuf截成小段,分别是年月日时分秒,通过下面TBuf转TInt,再分别把转换成TInt的年月日取出,通过TDateTime的setYear(),setMonth()等方法将时间set进TDateTime6.其他转换TBuf转换为TPtrC16TBuf<32>tText(_L(2004/11/0505:44:00));TPtrC16tPtrSecond=tText.Mid(17,2);TPtrC16转换为TBufC16TPtrC16tPtrSecond=tText.Mid(17,2);TBufC16<10>bufcs(tPtrSecond);TBufC16转换为TPtr16TBufC16<10>bufcs(tPtrSecond);TPtr16f=bufcs.Des();TPtr16转换为TBufTBuf<10>bufSecond;bufSecond.Copy(f);TBuf转换为TPtr16TBuf<10>bufSecond(_L(abc));TPtr16f;f.Copy(bufSecond);TBuf转换为TIntTIntaSecond;TLexiLexS(bufSecond);iLexS.Val(aSecond);TInt转换为TBufTBuf<32>tbuf;TInti=200;tbuf.Num(i);memset主要应用是初始化某个内存空间。用来对一段内存空间全部设置为某个字符。memcpy是用于COPY源空间的数据到目的空间中,用来做内存拷贝可以拿它拷贝任何数据类型的对象。strcpy只能拷贝字符串了,它遇到'\0'就结束拷贝。以下是S60的数据类型转换(巨有用)1.串转换成数字TBuf16<20>buf(_L(123));TLexlex(buf);TIntiNum;lex.Val(iNum);2.数字转换成串TBuf16<20>buf;TIntiNum=20;buf.Format(_L(%d),iNum);3.将symbian串转换成char串char*p=NULL;TBuf8<20>buf(_L(aaaaa));p=(char*)buf.Ptr();4.UTF-8转换成UNICODECnvUtfConverter::ConvertToUnicodeFromUtf8(iBuf16,iBuf8);5.UNICODE转换成UTF-8CnvUtfConverter::ConvertFromUnicodeToUtf8(iBuf8,iBuf16);6.将char串转换成symbian串char*cc=aaaa;TPtrC8a;a.Set((constTUint8*)cc,strlen(cc));再加一点:TDesC8&buf;TUint8*pdata;pdata=buf.Ptr();然后,这个pdata就可以当成unsignedchar*用了,这在网络通讯的时候很重要。如果,怕pdata破坏的话,可以TBuf8<1024>tmp_buf;tmp_buf.Copy(buf);pdata=tmp_buf.Ptr();这样就可以保护一下buf的数据了,尤其是如果这个buf是Socket的接收的数据是接收函数自己分配的时候。strcpy原型:externchar*strcpy(char*dest,char*src);用法:#include