COleVariant和VARIANT转换为CString类型

COleVariant和VARIANT转换为CString类型COleVariant是数据库常用到的数据类型。它可以是字串,整型值,日期等。知道怎样将它转换为CString很有用处。        设有CString A; COleVariant B; 来看看怎样将COleVariant转换为CString:        switch(B.vt){            case VT_BSTR:  A=B.bstrVal; bre

大家好,又见面了,我是你们的朋友全栈君。

COleVariant是数据库常用到的数据类型。它可以是字串,整型值,日期等。知道怎样将它转换为CString很有用处。

        设有CString A; COleVariant B; 来看看怎样将COleVariant转换为CString:

        switch(B.vt){


            case VT_BSTR:  A=B.bstrVal; break;//COleVariant是一个字串

            case VT_I2:  A.Format(_T(“%hd”),V_I2(&B));break;//是短整型

            case VT_I4:  A.Format(_T(“%d”),V_I4(&B));break;//是长整型

            case VT_R4:  A.Format(_T(“%e”),(double)V_R4(&B));break;//是浮点数

            case VT_R8:  A.Format(_T(“%e”),V_R8(&B));break;//是浮点数

            case VT_CY:  A=COleCurrency(B).Format();break;//是货币值

            case VT_DATE: A=COleDateTime(B).Format(“%Y-%m-%d”);break;//是日期

            case VT_BOOL: A=V_BOOL(&B)?”True”:”False”;break;//是布尔值

       }

VARIANT转CString类型

vResult = range.GetValue();    

CString str;     

 if(vResult.vt == VT_BSTR)        //字符串        

str = vResult.bstrVal;     

else if (vResult.vt == VT_R8)      //8字节的数字        

 str.Format(“%f”, vResult.dblVal);     

else if(vResult.vt == VT_DATE)     //时间格式    

 {          SYSTEMTIME st;        

            VariantTimeToSystemTime(vResult.date, &st);   

  }     

else if(vResult.vt == VT_EMPTY)    //单元格空的        

str = “”; 

转载自http://www.scistar.com/dis2/view.asp?enum=549

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/161066.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号