CString将指定位置的字符替换为另一个字符

cppzz5 2011-07-08 10:10:56
如题,我想将形如"2011070712181950_2_2.jpg.dB" 变成"2011070712181950_1_2.jpg.dB", 我的想法是先用s.find("_")找到第一个"_"的位置,从而得到它后面字符的位置,然后。。。就不会了
...全文
2201 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
向立天 2011-08-09
  • 打赏
  • 举报
回复
您好
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知

见此回复三日内无回应
我们将强制结帖
相关规定详见界面界面版关于版主结帖工作的具体办法
jianghandaxue 2011-07-12
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 ouyh12345 的回复:]
CString::Replace
[/Quote]

up
ytht8484 2011-07-08
  • 打赏
  • 举报
回复
void SetAt(int nIndex, TCHAR ch)//设置字符串某位置的字符
用这个就行了,nIndex的获取前面有人已经说过,就不写代码了
aoyihuashao 2011-07-08
  • 打赏
  • 举报
回复
Replace("_2_","_1_")
Gloveing 2011-07-08
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 ndy_w 的回复:]

SetAt
[/Quote]
void SetAt( int nIndex, TCHAR ch );
luciferisnotsatan 2011-07-08
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 hnwyllmm 的回复:]

CString::Find 找到_后面字符的index,再用Replace或者 str[index] = '*';替换就行了
[/Quote]
++
ndy_w 2011-07-08
  • 打赏
  • 举报
回复
SetAt
acdbxzyw 2011-07-08
  • 打赏
  • 举报
回复
int pos = s.Find('_');
s.Delete(++pos);
s.Insert(pos,'1');
羽飞 2011-07-08
  • 打赏
  • 举报
回复
CString::Find 找到_后面字符的index,再用Replace或者 str[index] = '*';替换就行了
hahayezhe112 2011-07-08
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 ouyh12345 的回复:]
CString::Replace
[/Quote]

Replace会把所有的都换掉的
ouyh12345 2011-07-08
  • 打赏
  • 举报
回复
CString::Replace
hahayezhe112 2011-07-08
  • 打赏
  • 举报
回复
CString str = "2011070712181950_2_2.jpg.dB";
char *p = str.Getbuffer();
while(*p!='\0'){
if(*p=='-'){
p[1] = '1';
break;
}
p++;
}

15,980

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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