_variant_t  to Cstring 的转换

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wlzzhcsdn/article/details/78225608
CString CMFCDataBaseDlg::VariantToCString(_variant_t var)

{

CString str; //转换以后的字符串

switch(var.vt)

{



case VT_BSTR: //var is BSTR type

str=var.bstrVal;

break;



case VT_I2: //var is short int type

str.Format(L"%d",(int)var.iVal);

break;



case VT_I4: //var is long int type

str.Format(L"%d",var.lVal);

break;



case VT_R4: //var is float type

str.Format(L".6f",(double)var.fltVal);

break;



case VT_R8: //var is double type

str.Format(L".6f",var.dblVal);

break;



case VT_CY: //var is CY type

str=COleCurrency(var).Format();

break;



case VT_DATE: //var is DATE type

str=COleDateTime(var).Format();

break;



case VT_BOOL: //var is VARIANT_BOOL

str= (var.boolVal==0) ?L"FALSE": L"TRUE";

break;



default:

str.Format(L"Unk type %d\n",var.vt);

TRACE(L"Unknown type %d\n",var.vt);

}

return str;

}

猜你喜欢

转载自blog.csdn.net/wlzzhcsdn/article/details/78225608