c#的string,如何更改具体某个位置上的字符?

booooook 2011-05-04 10:06:35
string str="my god, goodness";

我要把位置索引值为3的字符,改为"p";

即结果为:

"my_pod, goodness"


具体怎么做?
...全文
821 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuexiaodong2009 2011-05-04
  • 打赏
  • 举报
回复 1

C# code

string newstr = str.Remove(3,1).Insert(3, "p");
  • 打赏
  • 举报
回复 2
string str="my god, goodness";
string resu = str.Remove(3, 1).Insert(3, "p");
Response.Write(resu);
烈火蜓蜻 2011-05-04
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 booooook 的回复:]

引用 1 楼 linux7985 的回复:
如果经常要这样改的话,你应该用StringBuilder比较好

char[] sh = str.ToArray();
sh[3] = 'P';

str = new String(sh);


但是我又要经常用到string的replace函数。。
[/Quote]

那你就应该用 StringBuilder
booooook 2011-05-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 claymore1114 的回复:]
C# code

string newstr = str.Remove(3,1).Insert(3, "p");
[/Quote]

这个不错,经初步尝试可以使用。。。
booooook 2011-05-04
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wangyong0921 的回复:]
直接用string的replace函数就可以呀

使用StringBuilder的话,效率会高一些
[/Quote]

replace做不到。。。
Just4life 2011-05-04
  • 打赏
  • 举报
回复
直接用string的replace函数就可以呀

使用StringBuilder的话,效率会高一些
booooook 2011-05-04
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 linux7985 的回复:]
如果经常要这样改的话,你应该用StringBuilder比较好

char[] sh = str.ToArray();
sh[3] = 'P';

str = new String(sh);
[/Quote]

但是我又要经常用到string的replace函数。。
claymore1114 2011-05-04
  • 打赏
  • 举报
回复

string newstr = str.Remove(3,1).Insert(3, "p");
烈火蜓蜻 2011-05-04
  • 打赏
  • 举报
回复
如果经常要这样改的话,你应该用StringBuilder比较好

char[] sh = str.ToArray();
sh[3] = 'P';

str = new String(sh);

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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