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

原创 2007年09月19日 16:26:00
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);
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);
如何判断一个TBuf里边的字符串是否是一个数字?
TBool CFtSetPasswordCmd::CheckIsNumber(TDes& aPassword)
{
TLex temp(aPassword);
TInt b;

return (( temp.Val( b ) == KErrNone ) && ( temp.Remainder().Length() == 0 ));
}

再加上一个temp.Remainder().Length() == 0,判断一下是否有被过滤掉的字符就好了
如果输入的是“12345” temp.Remainder().Length()会等于0
如果输入的是“12345abc” temp.Remainder().Length()会不等于0

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);
     TPtr16 f=bufcs.Des();
TPtr16 转换为 TBuf
     TBuf<10> bufSecond;
     bufSecond.Copy(f);
TBuf 转换为 TPtr16
     TBuf<10> bufSecond(_L("abc"));
     TPtr16 f;
     f.Copy(bufSecond);
TBuf 转换为 TInt
     TInt aSecond;
     TLex iLexS(bufSecond);
     iLexS.Val(aSecond);
TInt 转换为 TBuf
     TBuf<32> tbuf;
     TInt i=200;
     tbuf.Num(i);
/*memset    memcpy    strcpy */
memset主要应用是初始化某个内存空间。用来对一段内存空间全部设置为某个字符。
memcpy是用于COPY源空间的数据到目的空间中,用来做内存拷贝可以拿它拷贝任何数据类型的对象。
strcpy只能拷贝字符串了,它遇到'/0'就结束拷贝。

strcpy
原型:extern char *strcpy(char *dest,char *src);
用法:#include <string.h>
功能:把src所指由NULL结束的字符串复制到dest所指的数组中。
说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
        返回指向dest的指针。
       
memcpy
原型:extern void *memcpy(void *dest, void *src, unsigned int count);
用法:#include <string.h>
功能:由src所指内存区域复制count个字节到dest所指内存区域。
说明:src和dest所指内存区域不能重叠,函数返回指向dest的指针。

memset
原型:extern void *memset(void *buffer, int c, int count);
用法:#include <string.h>
功能:把buffer所指内存区域的前count个字节设置成字符c。
说明:返回指向buffer的指针。 

 

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

原创 Symbian C++ 各种类型之间的转换 收藏1.TTime转TBuf型TBuf theTime;//存储转换后的时间TTime tt;tt.HomeTime();_LIT(KTimeF...
  • linzhiji
  • linzhiji
  • 2009年10月30日 14:17
  • 600

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

1. TTime转TBuf型TBuf theTime;//存储转换后的时间  TTime tt;  tt.HomeTime();  _LIT(KTimeFormat,"%Y%M%D%1-%2-%3 %...
  • wave_1102
  • wave_1102
  • 2007年10月15日 14:11
  • 618

Symbian C++ 各种类型之间的转换!!(整理)

function StorePage(){d=document;t=d.selection?(d.selection.type!=None?d.selection.createRange().text...
  • meteor0627
  • meteor0627
  • 2006年11月27日 10:45
  • 780

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

1. TTime转TBuf型TBuf theTime;//存储转换后的时间  TTime tt;  tt.HomeTime();  _LIT(KTimeFormat,"%Y%M%D%1-%2-%3 %...
  • spurs
  • spurs
  • 2007年10月22日 19:34
  • 283

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

原文:http://www.devdiv.net/viewthread.php?tid=2425&extra=page%3D1%26amp%3Bfilter%3Dtype%26amp%3Btypeid...
  • code09
  • code09
  • 2009年09月04日 11:53
  • 692

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

1. TTime转TBuf型TBuf theTime;//存储转换后的时间   TTime tt;   tt.HomeTime();   _LIT(KTimeFormat,"%Y%M%D%1-%2-%...
  • wormwormwormworm
  • wormwormwormworm
  • 2007年10月30日 16:59
  • 1003

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

作者:尘封亿事以下是常遇到的各种类型之间的转换 1.TTime转TBuf型TBuf theTime;//存储转换后的时间    TTime tt;    tt.HomeTime();    _LIT(...
  • vipwx
  • vipwx
  • 2008年06月27日 17:12
  • 258

Symbian C++ 各种类型之间的转换!!(整理)

http://blog.csdn.net/meteor0627/archive/2006/11/27/1416403.aspx1. TTime转TBuf型 TBuf theTime;//存储转换后的时...
  • zykun
  • zykun
  • 2007年10月23日 11:07
  • 397

Symbian c++

  • zhazha1980518
  • zhazha1980518
  • 2010年05月18日 16:26
  • 1288

各种类型之间的转换

1)将字符串转化为整型; int i = Integer.parseIn(String str); int i = Integer.valueOf().intValue(); 注:I...
  • u014742281
  • u014742281
  • 2015年05月15日 16:42
  • 204
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Symbian C++ 各种类型之间的转换
举报原因:
原因补充:

(最多只允许输入30个字)