您的位置:首页 > 其它

2dx学习笔记-----类型转换(CCstring int string char UTF-8互转)

2014-03-09 17:49 375 查看
在做数据转换时,最好包含以下头文件

#include <iostream>

#include <cmath>

#include <string> 

#include <sstream>

USING_NS_CC;

using namespace std;

在2d-x中,也有一个格式刷:CCString(数据转换常常找她做中间人)
那么我们要转换类型,
可先将起始数据类型刷成CCString然后再转成目的数据类型,
这个方法比较方便且实用。

int 转 CCstring
int num=5;
 CCString* ns=CCString::createWithFormat("%d",num);

 CCstring 转 int
int px = ns->intValue();//将CCString
转换为int的方法,转成float类型有 floatValue()
======================================

CCString 转    char
const char *string= ns->getCString();

char 转    CCString
CString.Format(”%s”,char *)//char 转cstring 
 CCString* ns=CCString::createWithFormat("%s",char
*);
======================================

string 转  char
const char *string=std::string("STRING").c_str();
char 转
string
string s(char *);
======================================

string  转 int

std::string s("1234");
int n = std::atoi(s.c_str());//函数原型int atoi(const
char *);

int 转 string

int a=3;

CCString* ns=CCString::createWithFormat("%d",a);

string s=ns->m_sString;

======================================

string 转 CCString
std::string str = "123";

CCString* ns=CCString::createWithFormat("%s",str.c_str());

CCString 转
string

std::string s=
ns->m_sString;//ns是一个CCString*类型

======================================

char 转  int

 char *buf
= "1122";

 int n = std::atoi(buf);

int 转 char

int a=3;

CCString* ns=CCString::createWithFormat("%d",a);

 

const char* s=ns->getCString();

这里额外提一下,IOS在参与跨平台用到的编码格式转换

 

  const char* char_url;    const char* char_parameter;

格式刷:

  NSString *endstr=[NSString stringWithFormat:@"%@?%@",char_url,char_parameter];

转换编码格式为utf-8

  endstr=[endstr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];//解决中文编码

NSString  转  char*

 

const char *char_gurl = [endstr cStringUsingEncoding:NSUTF8StringEncoding];

  char* 转 NSString  

const char* gameObject;

NSString *char_gameObject = [[NSString alloc] initWithCString:(const char*)gameObject

                                                             encoding:NSUTF8StringEncoding];

 

char* 转 URL

const char* url;

NSString *char_url = [[NSString alloc] initWithCString:(const char*)url

                                                      encoding:NSUTF8StringEncoding];

NSURL* url=[NSURL URLWithString:char_url];
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: