VC中的CString类有没有向像Java中的String类中split方法,把一个CString类型的串分割成CString数组!

解决方案 »

  1.   

    没有完全一致的。可以用sscanf、strtok等方法
      

  2.   

    函数名称:     strtok
    函数原型:     char *strtok(char *s1, const char *s2)
    函数功能:    分解s1字符串为用特定分隔符分隔的多个字符串(一般用于将英文句分解为单词)
    函数返回:     字符串s1中首次出现s2中的字符前的子字符串指针
    参数说明:     s2一般设置为s1中的分隔字符
                  规定进行子调用时(即分割s1的第二、三及后续子串)第一参数必须是NULL
                  在每一次匹配成功后,将s1中分割出的子串位置替换为NULL(摘下链中第一个环),因此s1被破坏了
                  函数会记忆指针位置以供下一次调用
                  
    所属文件:     <string.h>#include <string.h>
    #include <stdio.h>
    int main()
    {
        char *p;
        char *buffer;
        char *delims={ " .," };    buffer=strdup("Find words, all of them.");
        printf("%s\n",buffer);
        p=strtok(buffer,delims);
        while(p!=NULL){
          printf("word: %s\n",p);
          p=strtok(NULL,delims);
        }
        printf("%s\n",buffer);
        return 0;
    }
      

  3.   

    没有像Split的方法,但有Tokenize 方法,也是为了拆分字符串,用起来稍微比split方法麻烦一点