将txt转换为rtf

mar*_*s84 5 c# wpf rtf

我有一堆文本文件要转换为rtf.只是更改代码中的扩展名不起作用,底层文件是相同的.我需要文本是rtf格式.谁知道我怎么做到这一点?

问题是,当我加载纯文本文件时,RichTextBox没有格式化新行,因此它将其作为一个连续的文本块加载,而不是插入新行.

唯一的解决方案是打开纯文本文件和"另存为"rtf.

Ant*_*ula 16

只需将文本添加到空RTF模板中,纯文本无论如何都没有任何格式化,所以让我们说rtf模板看起来像这样(来自wikipedia示例):

{\rtf1\ansi{\fonttbl\f0\fswiss Helvetica;}\f0\pard _TEXT_CONTENT_HERE_ }
Run Code Online (Sandbox Code Playgroud)

更新:我忘记了新的线条,大括号和反斜杠:)

public static string PlainTextToRtf(string plainText)
{
  string escapedPlainText = plainText.Replace(@"\", @"\\").Replace("{", @"\{").Replace("}", @"\}");
  string rtf = @"{\rtf1\ansi{\fonttbl\f0\fswiss Helvetica;}\f0\pard ";
  rtf += escapedPlainText.Replace(Environment.NewLine, @" \par ");
  rtf += " }";
  return rtf;
}
Run Code Online (Sandbox Code Playgroud)