0

从未格式化的文本段落开始,我想让这些行“连续”(即删除换行符)。在下一段中,在前面的文本的第一行中有额外的(“空闲”)空格。

这是我的代码:

   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;
    } 
4

1 回答 1

0

我认为你的主要问题是这段代码:

if (bodyLines[i].Trim() != String.Empty)
{
    sb.Append(bodyLines[i]);
}

您正在测试修剪后的字符串,但随后将未修剪的字符串添加到StringBuilder. 我想你想要的是:

string trimmedLine = bodyLines[i].Trim();
if (trimmedLine != string.Empty)
{
    sb.Append(trimmedLine);
}
于 2013-01-28T21:27:00.757 回答