C# 如何在Stringbuilder中添加/替换线条?

C# 如何在Stringbuilder中添加/替换线条?,c#,stringbuilder,C#,Stringbuilder,我使用Stringbuilder创建如下字符串:LS2234-32342-2342-06455。我的问题是用另一个字符串替换第19行“0”中的字符串 var key = new StringBuilder { Capacity = 24 }; key.Append("L"); ...... 如何用其他字符串替换第19行?数组?要替换第19个字符的输入,需要访问第18个索引 var sb = new StringBuilder(); sb.Append("LS2234-32342-2342-0

我使用
Stringbuilder
创建如下字符串:LS2234-32342-2342-06455。我的问题是用另一个字符串替换第19行“0”中的字符串

var key = new StringBuilder { Capacity = 24 };

key.Append("L");
......

如何用其他字符串替换第19行?数组?

要替换第19个字符的输入,需要访问第18个索引

var sb = new StringBuilder();
sb.Append("LS2234-32342-2342-06455");

sb[18] = '0';

请参阅:

只需使用
插入即可解决此问题

            StringBuilder sb = new StringBuilder();
            sb.Append("LS2234-32342-2342-06455");
            sb.Remove(18,1);
            // Insert a string to 19th position
            sb.Insert(18, "test");

如果我理解正确,你可能会想要这个

StringBuilder sb = new StringBuilder("LS2234-32342-2342-06455");
sb.Remove(18, 1);
sb.Insert(18, 'E');
Console.WriteLine(sb.ToString());
输出将是

LS2234-32342-2342-E6455
                  ^

这里是a。

您是指第19行而不是第19行吗?替换为什么-另一个字符串或另一个字符?不,我的意思是像这样的数组[19]=“E”;
StringBuilder
索引器需要一个
char
。你以前用谷歌搜索过吗?这可行吗?我认为这只适用于数组:
StringBuilder
具有