我正在使用 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/