问题标签 [stringbuilder]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
9101 浏览

c# - C# StringBuilder - 如何转义这个字符串:

我需要转义上面的字符串才能将整个内容添加到 StringBuilder 但到目前为止我必须遗漏一些东西,因为字符串终止不正确......

0 投票
7 回答
28828 浏览

c# - 您何时使用 StringBuilder.AppendLine/string.Format 与 StringBuilder.AppendFormat?

最近出现了一个关于使用 String.Format() 的问题。我的部分回答包括使用 StringBuilder.AppendLine(string.Format(...)) 的建议。Jon Skeet 认为这是一个不好的例子,并建议使用 AppendLine 和 AppendFormat 的组合。

我突然想到,我从来没有真正让自己适应使用这些方法的“首选”方法。我想我可能会开始使用类似以下的东西,但我很想知道其他人使用什么作为“最佳实践”:

0 投票
7 回答
7517 浏览

c# - 用于在 C# 中附加集合的 StringBuilder 扩展方法

在 C# 中,我正在尝试为 StringBuilder 构建一个名为 AppendCollection() 的扩展方法,它可以让我这样做:

stringPeople 最终会为列表中的每个人加上一行。每一行都是 p.ToString() 的结果。对于 stringOrders 也是如此。我不太确定如何编写代码以使 lambda 与泛型一起使用。

0 投票
32 回答
855354 浏览

java - StringBuilder 和 StringBuffer 的区别

StringBuffer和之间的主要区别是什么StringBuilder?在决定其中任何一项时是否存在任何性能问题?

0 投票
8 回答
21597 浏览

c# - 用于字符串连接的 StringBuilder 抛出 OutOfMemoryException

我们大多倾向于遵循上述最佳实践。

看看String 与 StringBuilder

但即使有足够的可用内存, StringBuilder 也可能抛出OutOfMemoryException 。它会抛出 OOM 异常,因为它需要“连续的内存块”。

一些链接供参考 StringBuilder OutOfMemoryException

还有更多......

你们中有多少人面临或意识到这个问题,你做了什么来解决它?

有什么我想念的吗?

PS:我没有意识到这一点。

我已经改写了这个问题。

*** 同样的事情也适用于手动连接(我将验证这一点并更新 SO)。引起我担心的另一件事是系统中有足够的内存。这就是我在这里提出这个问题以检查是否有人遇到这个问题或者代码有什么严重错误的原因。

0 投票
7 回答
18374 浏览

c# - 如何将 TextBox 控件绑定到 StringBuilder 实例?

我想要几个文本框来响应底层字符串的变化。因此,如果我要更改字符串的内容,所有这些文本框也会更改其内容。

现在,我不能使用 String 类型,因为它是不可变的。所以我选择了 StringBuilder。但是 TextBox 对象的 Text 属性只接受 String。

有没有一种简单的方法可以将 StringBuilder 对象“绑定”到 TextBox 的 Text 属性?

非常感谢!

PS:TextBox 目前是 WPF。但是我可能会因为 Mono 而切换到 Windows 窗体。

0 投票
6 回答
1012 浏览

c# - 在 Web 应用程序中使用 StringBuilder 是否值得?

在网络应用程序中,我正在拆分字符串并分配给链接名称或字符串集合。将 stringbuilder 用于 Web 应用程序是否有显着的性能优势?

编辑:2 个功能:将链接拆分为 5-10 个字符串。然后重新打包成另一个字符串。此外,每次单击链接时,我都会一次将一个字符串附加到链接。

0 投票
3 回答
10237 浏览

asp.net - 使用 HtmlTextWriter 呈现服务器控件?

我正在编写RenderContents()我的 ASP.NET 服务器控件的方法。该方法使用HtmlTextWriter对象来呈现输出内容。对于我正在编写的控件,使用HtmlTextWriter's 方法似乎需要很多代码行来打开和关闭每个标签并将每个属性添加到流中。最后,我觉得我最终会得到比它需要的更长的代码。

我在想,如果我使用一个可链接的类,例如StringBuilder,我的代码会更容易阅读和编写。

我想知道的是,是否有任何理由使用该HtmlTextWriter对象来呈现我的整个控件的内容?除了安全检查(我假设)之外,它还包括确保您不会以错误的顺序编写标签或创建无效标记,我看不出任何原因。

似乎只做这样的事情会更容易:

有什么理由说明这是一个坏主意吗?

更新
响应Mehrdad Afshari的回答:
我并没有过多考虑StringBuilder实例化单独对象的内存要求。为 HtmlTextWriter 制作一个包装器怎么样,这样它就可以被链接起来,这样就不会产生额外的字符串。

0 投票
6 回答
2095 浏览

c# - 为什么 StringBuilder 类不是继承自 Stream?

我只是对此感到好奇。令我震惊的是,StringBuilder 的行为在功能上(如果不是技术上)与 Stream 相同——它是一个可以添加其他数据的数据箱。

再次,只是好奇。

0 投票
6 回答
30426 浏览

vb.net - 何时使用 StringBuilder?

可能重复:
String vs StringBuilder

我刚刚重温了一些我用来学习 VB.NET 的书籍。我不确定我脑子里有这个,了解 StringBuilder 是如何/是什么。

使用指南是什么?如果要连接 2 个字符串或 50 个字符串,最好使用它吗?

或者当总字符串长度大于 128 个字符时?

或者,当您使用它来添加字符串时,您会看到性能优势吗?

在哪种情况下使用 StringBuilder 实例来构建 SQL 语句比使用更好string.format("Select * from x where y = {0}",1)

声明另一个变量并包含名称空间对小字符串连接没有好处,这总是让我感到震惊,但我现在不确定。

抱歉,很多文档告诉您使用什么,而不是最好的。