9

RichTextBox所有,我将一个日志文件写入一个具有格式下划线、粗体等的 .rtf 文件。我已保存此文件,并希望稍后将其读回以保留其格式。我试过以下

tmpRichTextBox.LoadFile(@"F:\Path\File.rtf", RichTextBoxStreamType.RichText);

它加载文件,但没有我的原始格式。如果我将 .rtf 加载到 word 中,则会显示格式。如何将 .rtf 读回RichTextBox 包括其格式?

谢谢你的时间。

4

3 回答 3

1

如果您可以将日志文件保存为 html 格式,则可以使用 WebBrowser Control 读取此文件。像这样:

  private void button1_Click(object sender, EventArgs e)
  {
     string fileName = Path.Combine(Environment.CurrentDirectory, "log1.htm");

      webBrowser1.DocumentText = File.ReadAllText(fileName);
   }

这完美地工作。

于 2013-09-02T11:56:51.690 回答
1

已编辑:
您可能会在稍后的代码中丢失格式。某些操作可能会导致格式化丢失。例如, richTextBox.Font = newFont;

我遇到了这个问题,但幸运的是我找到了解决方法。这是可以让您更改字体而不会丢失格式的代码:

richTextBox.SelectAll();
richTextBox.SelectionFont = newFont;
string rtf = richTextBox.SelectedRtf;
richTextBox.Font = newFont;
richTextBox.Rtf = rtf;
于 2013-02-20T00:08:44.123 回答
1

你检查了吗NRTFTree

它是一个很棒的 RTF 管理库!

于 2012-05-23T07:29:23.890 回答