关于中文字符串的操作问题,希望大家帮帮忙!

weqi 2004-09-19 10:58:14
我有一个CString字符串m_strBegin,里面的内容格式为:中文字符+逗号+中文字符+逗号....(通过逗号分割中文字符)
我想做的是将这个字符串中的中文字符都strcpy下来分开,中文显示,大家有什么好的方法吗?
...全文
147 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
weqi 2004-09-19
  • 打赏
  • 举报
回复
daymist(土狼) 我寒!你Up什么啊!说说看啊!正在琢磨pleasehelpme(革命尚未成功,同志仍需努力)的源代码!嘿嘿
daymist 2004-09-19
  • 打赏
  • 举报
回复
up
pleasehelpme 2004-09-19
  • 打赏
  • 举报
回复
to weqi(奶茶)
不会吧,我以前做的怎么可以
/*
Name: ChineseEnglish
Date: 14-09-04 19:32
Description: determines whether a character is a ASCII(0-127).
chinese first character is less than zero(not very sure).
*/

#include <iostream>

int main()
{
using namespace std;
char tmpstr[255] = {0};
strcpy(tmpstr, "a我ai北jing天安men,我爱吃草,我爱用笔写字:)");
cout << tmpstr << endl;

for (int i=0; i<strlen(tmpstr);) {
if (tmpstr[i] < 0) {//chinese
char chi[3] = {tmpstr[i], tmpstr[i+1], '\0'};
cout << chi;
i += 2;
} else { //english
cout << tmpstr[i];
i++;
}
}
cout << endl;
system("pause");
return 0;
}
weqi 2004-09-19
  • 打赏
  • 举报
回复
Pipi0714(小兔子) 关键是我不知道具体有多少个中文字符段,那怎么定sz的个数呢?
weqi 2004-09-19
  • 打赏
  • 举报
回复
pleasehelpme(革命尚未成功,同志仍需努力) ,那样做是可以拷贝下来,但是重新显示的时候不是中文啊!
Pipi0714 2004-09-19
  • 打赏
  • 举报
回复
不用strcpy,这个函数最简单:sscanf(),看看msdn很简单!
char sz[] = "12:22:22";
int n1,n2,n3;
sscanf(sz,"%d:%d:%d",&n1,&n2,&n3); //n1 = 12,n2 = 22,n3 = 22

sscanf(sz,"%s,%s,%s",sz1,sz2,sz3); //char sz1[100];
pleasehelpme 2004-09-19
  • 打赏
  • 举报
回复
转化为char的字符串,再按byte拷不行吗?
中文字符是2字节的。第一个字节小于0。
遇见小于0的字节,再读他后面的一个字节就行了。
weqi 2004-09-19
  • 打赏
  • 举报
回复
截取操作是通过循环,一个一个字节复制吗?那样再次显示会出现乱码吧!?
快乐鹦鹉 2004-09-19
  • 打赏
  • 举报
回复
用CString的Find函数,查找逗号,然后进行字符串截取即可
这段程序用while循环即可
ghgk 2004-09-19
  • 打赏
  • 举报
回复
用CString就可以处理,用CString::Find()找到指定的字符":"。再用CString::Left()或CString::Right ()这两个成员函数从左或右截取指定数量的字符,再加入循环这样应该能符合楼主的要求。
CString str (TEXT("姓名,年龄,性别,住址"));
str.Left (str.Find (","));
AnnLiu 2004-09-19
  • 打赏
  • 举报
回复
pleasehelpme(革命尚未成功,同志仍需努力) 的方法可以啊
再用 strcmp(chi,",") 判断分割拷贝中文字符串即可

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧