如何像 php 一样内爆 CkStringArray?
how to implode CkStringArray like php?
是 Chilkatsoft 具有 CkStringArray
的内爆功能,如果没有,那么我们如何组合所有 CkStringArray
成员并得到一个 CkString
对象
CkString implode(char* key, CkStringArray* StrArray) {
CkString rt;
CkString tmp;
for (int i = 0; i < StrArray->get_Length(); i++) {
tmp.clear();
StrArray->Pop(tmp);
rt.append(tmp);
if (i < (StrArray->get_Length() - 1))
rt.append(key);
}
tmp.clear();
return rt;
}
引用为:
CkString abc = "h|e|l|l|o";
CkStringArray* cba = abc.split('|',true,false,false);
MessageBox(NULL, (LPCSTR)implode2("-",cba).getString(), NULL, NULL);
然后在消息框里给出 o-l-l
ChilkSoft 不提供内爆功能。使用 GetString
而不是 Pop
,如下所示:
CkString implode(char* key, CkStringArray* StrArray) {
CkString rt;
CkString tmp;
for (int i = 0; i < StrArray->get_Length(); i++) {
tmp.clear();
StrArray->GetString(i, tmp);
rt.append(tmp.getString());
if (i < (StrArray->get_Length() - 1))
rt.append(key);
}
tmp.clear();
return rt;
}
是 Chilkatsoft 具有 CkStringArray
的内爆功能,如果没有,那么我们如何组合所有 CkStringArray
成员并得到一个 CkString
对象
CkString implode(char* key, CkStringArray* StrArray) {
CkString rt;
CkString tmp;
for (int i = 0; i < StrArray->get_Length(); i++) {
tmp.clear();
StrArray->Pop(tmp);
rt.append(tmp);
if (i < (StrArray->get_Length() - 1))
rt.append(key);
}
tmp.clear();
return rt;
}
引用为:
CkString abc = "h|e|l|l|o";
CkStringArray* cba = abc.split('|',true,false,false);
MessageBox(NULL, (LPCSTR)implode2("-",cba).getString(), NULL, NULL);
然后在消息框里给出 o-l-l
ChilkSoft 不提供内爆功能。使用 GetString
而不是 Pop
,如下所示:
CkString implode(char* key, CkStringArray* StrArray) {
CkString rt;
CkString tmp;
for (int i = 0; i < StrArray->get_Length(); i++) {
tmp.clear();
StrArray->GetString(i, tmp);
rt.append(tmp.getString());
if (i < (StrArray->get_Length() - 1))
rt.append(key);
}
tmp.clear();
return rt;
}