我正在编写将转换为rtf
的代码txt
。
当给我的方法一个 rtf 格式的文本时,首先它必须检查它是否具有 rtf 格式。如果不是,那么什么也不做。
我的问题:
rtf 文件是否总是以{\rtf1
? 如果是这样,那么我可以对此进行检查。
谢谢
我正在编写将转换为rtf
的代码txt
。
当给我的方法一个 rtf 格式的文本时,首先它必须检查它是否具有 rtf 格式。如果不是,那么什么也不做。
我的问题:
rtf 文件是否总是以{\rtf1
? 如果是这样,那么我可以对此进行检查。
谢谢
简而言之,是的
这是来自 1.9.1 RTF 规范
“ \rtfN控制字必须跟在左大括号后面。数字参数N标识所使用的 RTF 规范的主要版本。”
您可以使用临时 RichTextBox。
RichTextBox rtb = new RichTextBox();
try
{
rtb.RTF=rtf; // rtf is the rtf data you want to convert
text = rtb.Text;
}
catch
{
// invalid RTF
}
有效的 rtf 文件始终以{\rtf
序列开头并以结束结尾}
。虽然标签后面的数字{\rtf
应该是版本号,但通常会被忽略。Word 仍{\rtf1
用于开头顺序。