Symbian中的类型转换.docx_第1页
Symbian中的类型转换.docx_第2页
Symbian中的类型转换.docx_第3页
Symbian中的类型转换.docx_第4页
Symbian中的类型转换.docx_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Symbian中的类型转换1.TTime转TBuf型TBuf theTime;/存储转换后的时间TTime tt;tt.HomeTime();_LIT(KTimeFormat,%Y%M%D%1-%2-%3 %H:%T:%S);/格式为:2006-03-04 12:12:12tt.FormatL(theTime,KTimeFormat);/FormatL()会以KTimeFormat字符串的形式来格式化时间在赋值给theTime2. TDateTime转TBuf型TTime currentTime;/声明一个TTime类型currentTime.HomeTime();/设置TTime为当前时间TDateTime tdt=currentTime.DateTime();/TTime - TDateTimeTBuf 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位数字TInt iNum1(123456789009876);/ 将缓存的内容设置为iNum1iBuf.Num(iNum1);/ 使用iBuf包含的内容创建TLex对象/ the 15 digit numberTLex iLex(iBuf);/ iNum1TInt iNum2;/iNum2现在包含了15位数字iLex.Val(iNum2);4. Tint转TBuf型TBuftmp;Tint ti=190;Tmp.AppendNum(ti);5. TBuf转TDateTime型将长的TBuf截成小段,分别是年月日时分秒,通过下面TBuf转TInt ,再分别把转换成TInt的年月日取出,通过TDateTime的setYear(),setMonth()等方法将时间set进TDateTime6. 其他转换TBuf 转换为 TPtrC16TBuf tText(_L(2004/11/05 05:44:00);TPtrC16 tPtrSecond=tText.Mid(17,2);TPtrC16 转换为 TBufC16TPtrC16 tPtrSecond=tText.Mid(17,2);TBufC16 bufcs(tPtrSecond);TBufC16 转换为 TPtr16TBufC16 bufcs(tPtrSecond);TPtr16 f=bufcs.Des();TPtr16 转换为 TBufTBuf bufSecond;bufSecond.Copy(f);TBuf 转换为 TPtr16TBuf bufSecond(_L(abc);TPtr16 f;f.Copy(bufSecond);TBuf 转换为 TIntTInt aSecond;TLex iLexS(bufSecond);iLexS.Val(aSecond);TInt 转换为 TBufTBuf tbuf;TInt i=200;tbuf.Num(i);memset主要应用是初始化某个内存空间。用来对一段内存空间全部设置为某个字符。memcpy是用于COPY源空间的数据到目的空间中,用来做内存拷贝可以拿它拷贝任何数据类型的对象。strcpy只能拷贝字符串了,它遇到0就结束拷贝。以下是S60的数据类型转换(巨有用)1.串转换成数字TBuf16 buf(_L( 123 ) );TLex lex( buf );TInt iNum;lex.Val( iNum );2.数字转换成串TBuf16 buf;TInt iNum = 20;buf.Format( _L( %d ) , iNum );3.将symbian串转换成char串char* p = NULL;TBuf8 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;TPtrC8 a;a.Set( (const TUint8*)cc , strlen(cc) );再加一点:TDesC8 & buf ;TUint8 * pdata ;pdata = buf.Ptr() ;然后,这个pdata就可以当成unsigned char *用了,这在网络通讯的时候很重要。如果,怕pdata破坏的话,可以TBuf8 tmp_buf ;tmp_buf.Copy(buf) ;pdata = tmp_buf.Ptr() ;这样就可以保护一下buf的数据了,尤其是如果这个buf是Socket的接收的数据是接收函数自己分配的时候。strcpy原型:extern char *strcpy(char *dest,char *src);用法:#include 功能:把src所指由NULL结束的字符串复制到dest所指的数组中。说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。返回指向dest的指针。memcpy原型:extern void *memcpy(void *dest, void *src, unsigned int count);用法:#include 功能:由src所指内存区域复制count个字节到dest所指内存区域。说明:src和dest所指内存区域不能重叠,函数返回指向dest的指针。memset原型:extern void *memset(void *buffer, int c, int count);用法:#include 功能:把buffer所指内存区域的前count个字节设置成字符c。说明:返回指向buffer的指针。1. TTime转TBuf型TBuf theTime;/存储转换后的时间TTime tt; tt.HomeTime();_LIT(KTimeFormat,%Y%M%D%1-%2-%3 %H:%T:%S);/格式为:2006-03-04 12:12:12tt.FormatL(theTime,KTimeFormat);2. TDateTime转TBuf型TTime currentTime;/声明一个TTime类型currentTime.Hom

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论