c# - 无法一直创建空行c#

标签 c#

我正在使用 StringBuilder 将纯文本写入电子邮件正文。该行不会添加到所有需要的地方。

到目前为止,我已经尝试过了。两者都不会一直创建所需的行。

builder.Append("\r\n");
builder.Append(Environment.NewLine);

这是我的部分代码:

builder.Append("question 1: ");
builder.Append(CommonUtilities.GetYESNOfromBOOL(bo.GetAnswer1));
builder.Append(Environment.NewLine);
builder.Append("question 2: ");
builder.Append(CommonUtilities.GetYESNOfromBOOL(bo.GetAnswer2));
builder.Append(Environment.NewLine);
builder.Append("question 3: ");
builder.Append(CommonUtilities.GetYESNOfromBOOL(bo.GetAnswer3));
builder.Append(Environment.NewLine);

结果:

question 1: No
question 2: Yes question 3: No

期望的结果:

question 1: No
question 2: Yes 
question 3: No

如果我按预期添加两个 builder.Append(Environment.NewLine),它会创建两条双线(但我无法让它在第三个问题中换行)。我有几个这样的问题,这是随机发生的(没有规律)。

关于如何强制单行的任何建议。

最佳答案

你做了一个错误的假设; StringBuilder.Append 不追加新行。您需要 .AppendLine()。您所拥有的正是每个 .Append 所期望的添加文本,但没有行终止符。您添加了 3,所以您得到 3 行。

根据 OP 评论更新

根据您的代码和方法,这应该没问题:

builder.AppendLine(String.Format("Full Houlse?: {0}", CommonUtilities.GetYESNOfromBOOL(bo.FullHoulse)));

格式化您需要的字符串,并将完整的行附加到 StringBuilder。您需要为其中的每一行执行此操作。

关于c# - 无法一直创建空行c#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26718823/

相关文章:

c# - 打开 XML : How to add rows and cell value after appending new sheet in existing Excel file using c#

c# - 在 C# foreach 条件中放入查询的效率

c# - 在 iTextSharp 中向 pdf 单元格添加页眉、页脚和背景颜色

c# - 我是否需要为开源项目保护我的强名称 key 文件?

c# - 仅在条件为真时返回(不使用 if)

c# - Linq to Sql 会自动关闭连接吗?

c# - 如何从 Visual Studio 以 Debug模式运行 NUnit?

c# - 将异步回调传递给 Timer 构造函数

c# - C# 中的 Flatten Ruby 方法

c# - Azure辅助角色中的程序执行可以在本地模拟器中运行,但不能在云中运行