CString 转换成 VARIANT

_variant_t是VARIANT的封装类,其赋值可以使用强制类型转换,其构造函数会自动处理这些数据类型。


CString转为VARIANT

COleVariant v;
CString str = "this is test";
v = str;
VARIANT v1 = v;

or

v1=(COleVariant )str;

byte[]转为CString

byte databyte[]={0xc4,0xe3,0xba,0xc3,0xd6,0xd0,0xb9,0xfa,0x00};

CString str;

str=(CString) databyte;



VARIANT  转为CString


VARIANT variant1;
COleSafeArray safeArray;
CString str1;

CString  str2;
LONG len,k;//定义长整型变量len,k
BYTE rxdata[2048];//定义BYTE型数组

variant1 = m_Com.get_Input();//把接收到的数据存放到VARIANT型变量里
safeArray = variant1;//VARIANT型变量转换为ColeSafeArray型变量
len = safeArray.GetOneDimSize(); //获取长度
memset(rxdata, 0, 2048);

BYTE* btp = new BYTE[len]; //动态创建数组
for(k=0;k<len;k++)
{
safeArray.GetElement(&k,rxdata+k); 
//得到接接收到的数据放到BYTE型数组rxdata里
safeArray.GetElement(&k, btp + k); 
str1.AppendChar(*(btp+k)); //方法一 动态创建
}

str2=(CString)rxdata; //方法2  固定长度必须清零 memset(rxdata, 0, 2048);






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值