如何在Stringbuilder中添加/替换行?

时间:2013-09-16 12:28:53

标签: c# stringbuilder

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

var key = new StringBuilder { Capacity = 24 };

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

如何用其他字符串替换第19行?阵列

3 个答案:

答案 0 :(得分:2)

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

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

输出将是;

LS2234-32342-2342-E6455
                  ^

这里有 DEMO

答案 1 :(得分:1)

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

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

sb[18] = '0';

请参阅:StringBuilder.Chars

答案 2 :(得分:0)

只需使用Insert即可解决此问题。

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