网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 
中国网管联盟
Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道
 当前位置: > bitsCN.com > DotNet > VC.NET > Visual C++.NET中的字符串转换方法  

Visual C++.NET中的字符串转换方法

2007-07-25  作者:bitsCN整理  来源:中国网管联盟  点评 投稿 收藏

  

  方法三,使用CString::GetBuffer。

网管网www_bitscn_com


例如: 网管朋友网www_bitscn_net

CString s(_T("This is a test "));
LPTSTR p = s.GetBuffer();
// 在这里添加使用p的代码
if(p != NULL) *p = _T('\0');
s.ReleaseBuffer();
// 使用完后及时释放,以便能使用其它的CString成员函数 
网管u家u.bitscn@com


  (3) BSTR转换成char*

  方法一,使用ConvertBSTRToString。

网管论坛bbs_bitsCN_com

例如: 网管u家www.bitscn.net

#include
#pragma comment(lib, "comsupp.lib")
int _tmain(int argc, _TCHAR* argv[]){
BSTR bstrText = ::SysAllocString(L"Test");
char* lpszText2 = _com_util::ConvertBSTRToString(bstrText);
SysFreeString(bstrText); // 用完释放
delete[] lpszText2;
return 0;
}
网管u家u.bitscn@com


  方法二,使用_bstr_t的赋值运算符重载。

网管bitscn_com

例如: 网管u家u.bitscn@com

_bstr_t b = bstrText;
char* lpszText2 = b; 

网管联盟bitsCN_com


  (4) char*转换成BSTR

  方法一,使用SysAllocString等API函数。 网管bitscn_com

例如:

网管u家u.bitsCN.com

BSTR bstrText = ::SysAllocString(L"Test");
BSTR bstrText = ::SysAllocStringLen(L"Test",4);
BSTR bstrText = ::SysAllocStringByteLen("Test",4);
网管有家bitscn.net


  方法二,使用COleVariant或_variant_t。 网管u家u.bitscn@com

例如: 网管下载dl.bitscn.com

//COleVariant strVar("This is a test");
_variant_t strVar("This is a test");
BSTR bstrText = strVar.bstrVal;
网管朋友网www_bitscn_net


  方法三,使用_bstr_t,这是一种最简单的方法。 网管联盟bitsCN@com

例如: 网管联盟bitsCN@com

BSTR bstrText = _bstr_t("This is a test"); 

网管bitscn_com

  方法四,使用CComBSTR。 网管bitscn_com

例如: 网管论坛bbs_bitsCN_com

 BSTR bstrText = CComBSTR("This is a test");
网管论坛bbs_bitsCN_com

  或 网管朋友网www_bitscn_net

CComBSTR bstr("This is a test");
BSTR bstrText = bstr.m_str;
网管网www_bitscn_com


  方法五,使用ConvertStringToBSTR。

网管有家bitscn.net

例如:

网管论坛bbs_bitsCN_com

char* lpszText = "Test";
BSTR bstrText = _com_util::ConvertStringToBSTR(lpszText);
网管u家u.bitscn@com


  (5) CString转换成BSTR

  通常是通过使用CStringT::AllocSysString来实现。 网管联盟bitsCN_com

例如:

网管下载dl.bitscn.com

CString str("This is a test");
BSTR bstrText = str.AllocSysString();

SysFreeString(bstrText); // 用完释放 
网管下载dl.bitscn.com


 

网管u家u.bitsCN.com

中国网管联盟bitsCN.com

TAGs   方法   转换   字符串   类型   BSTR   使用   //   test   is   This   例如      
 上一篇:Visual C++实现文件间批量转换功能   下一篇:通过反射填充泛型集合List的方法
Visual C++.NET中的字符串转换方法 评论:
loading.. 评论加载中…
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

验证码: 注册用户
本类热门排行:
最新推荐文章:
网管论坛交流: