从未格式化的文本段开始,我想将行设为“连续”(即删除换行符)。在下一段中,在前一行文本的第一行中有额外的(“自由”)空格。
这是我的代码:
private String FormateContent(String content)
{
StringBuilder sb = null;
content = content.Replace(evaluationString, String.Empty);
content = content.Trim().Trim('\r').Trim('\n').Trim('\t');
if (content.Trim() != String.Empty)
{
sb = new StringBuilder();
String[] bodyLines = content.Split(new String[] { Environment.NewLine, "\n" }, StringSplitOptions.None);
for (int i = 0; i < bodyLines.Length; i++)
{
if (bodyLines[i].Trim() != String.Empty)
{
sb.Append(bodyLines[i]);
}
}
content = sb.ToString();
// content = content.Split(new String[] { Environment.NewLine, "." }, StringSplitOptions.None).ToString();
}
return content;
}
答案 0 :(得分:0)
我认为您的主要问题是此代码:
if (bodyLines[i].Trim() != String.Empty)
{
sb.Append(bodyLines[i]);
}
您正在测试剪裁后的字符串,但是您将未剪裁的字符串添加到StringBuilder
。我想你想要的是:
string trimmedLine = bodyLines[i].Trim();
if (trimmedLine != string.Empty)
{
sb.Append(trimmedLine);
}