佚名通过本文主要向大家介绍了variant t转string,variant转string,variant date,大众旅行车variant,高尔夫旅行variant等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 如何实现stl::string和VARIANT::DATE的相互转换
描述:
解决方案1:
描述:
在ATL(不能使用MFC的类),如何实现stl::string和VARIANT::DATE的相互转换,或者如何在ATL里面使用COleDateTime.目前我使用该类包含的头文件afxdisp.h,编译会报错,提示Windows.h already included MFCApps must not include windows.h.
解决方案1:
如果不用COM支持类,直接用API转换也是一样:
HRESULT VariantChangeType(
VARIANTARG * pvargDest,
VARIANTARG * pvarSrc,
unsigned short wFlags,
VARTYPE vt
);
用COM支持类,注意捕捉异常.
std::string = "1900-01-02";
_variant_t var(str.c_str());
var.ChangeType(VT_DATA); // 转成日期
var.ChangeType(VT_BSTR); // 转成串
string->Date:
截取年月日等,然后
date.SetYear(year);
......