常用常见数据格式的转换

来源:互联网 发布:淘宝买职称论文 编辑:程序博客网 时间:2024/06/04 20:09

本片文章主要记录以下内容:

1 算术类型转化为相应的string表示形式

2 数值型数据的字符表示形式转化为相应的算术值

3 算术类型转化为相应的CString表示形式

4 string类型与char*的相互转换

5  string类型与CString类型的相互转换

6  char*与CString数据类型的相互转换

具体如下:

1算术类型转化为相应的string表示形式

1)方法1

float in2=12.3;stringstream sstr1;//用ostringstream也是可以的sstr1<<"转换的数字是:"<<in2<<endl;//将算术类型转换为相应的string表示形式string str=sstr1.str()//获得流的string表示形式cout<<str<<endl;
2)方法2

sprintf函数

3)方法3

itoa等函数

2 数值型数据的字符表示形式转化为相应的算术值

1)方法1

string str1="123";stringstream sstr(str1); //用istringstreamint in1;sstr>>in1;//读取istringstream对象自动地将数值型数据的字符表示形式转换为相应的算术值cout<<in1<<endl;
2)方法2

atoi,atol,atof等

3 算术类型转化为相应的CString表示形式

1) 方法1

int i=123;CString str;str.format("%d",i);//int->CString 其他的基本类型转化类似

4 string类型与char*的相互转换

a)char*转化为string类型

string s1(p1);
//cout<<"s1的值是:"<<s1<<endl;*/

b)string类型转化为char*(要注意的是char*最后一个字符是\0)

string s2("hello");
1)方法1

char* p1=(char*)s2.data();//方法一,需要收到将const char*转换为char*

2)方法2

char* p2=(char*)s2.c_str();

3)方法3

int len_s=s2.length();
char p[5];
s2.copy(p,len_s,0);
*(p+len_s)='\0';
cout<<p1<<endl<<p2<<endl<<p<<endl;
cout<<"p2的值是:"<<p2<<endl;

5  string类型与CString类型的相互转换

a)string转换为CString

1)方法1

CString cs2;
cs2.Format("%s",s2.c_str());
cout<<"cs2的值是:"<<cs2<<endl;

b) CString转换成string类型

1)方法1

CString cstring1("cstring1");
string s=cstring1.GetBuffer(cstring1.GetLength()));

6  char*与CString数据类型的相互转换

a)char* 转化成CString

1)方法1

char* p1="p1";
CString cs1(p1);
cout<<"cs1的值是:"<<cs1<<endl;

2)方法2

CString cs2;
cs2.Format("%s",p1);?/此处设置如下:项目->属性->配置属性->常规->字符集(改为多字符集)
cout<<"cs2的值是:"<<cs2<<endl;

b)CString转化成char*

1)方法1

char* p=cstring1.GetBuffer(cstring1.GetLength());
cout<<s<<endl<<p<<endl;

附:

1)c_str()使用说明

http://baike.baidu.com/link?url=WfF18g8dP6QVe84aQN1QYMpXfQpCJF70nbl-jO8dBBjJEH4LyqKsgsjTUKviGKcwReGuKBGaYGAu9aNp0JuuW

2)fgets()的使用方式

http://baike.baidu.com/link?url=GCD9K1_PLJu_cvK1wv8jT0TVCHp81Ou6RQkLStRZQT2oe8mvkI_tVgKksUhAwZ5d

3) LPTSTR、LPCSTR、LPCTSTR、LPSTR的意义

http://blog.csdn.net/douzixinxin/article/details/869937

Reference:

1)http://blog.sina.com.cn/s/blog_486285690100lhmf.html

2)http://blog.csdn.net/candadition/article/details/7342380

3)http://blog.csdn.net/wingofeagle/article/details/9326429

4)http://blog.csdn.net/wingofeagle/article/details/9326429

原创粉丝点击