我一直在谷歌上搜索数小时,似乎找不到以PowerShell WPF形式查看rtf文件的方法。
我可以使用:
获取rtf文件$myContent = gc c:\myContent.rtf
但是当我尝试使用以下方式显示它时:
$RichTextBox.appendText($myContent)
我得到编码的rtf,而不是格式正确的内容。
任何人都有办法做到这一点?有很多关于如何在c#中执行此操作的示例,但对于PowerShell没有。
谢谢,
本
答案 0 :(得分:3)
.AppendText仅适用于字符串,而不适用于原始RTF。 RTF是与原始文本混合的一系列控制代码。您需要使用不同的方法来解析它:
$stream = new-object IO.MemoryStream (`
[Text.ASCIIEncoding]::Default.GetBytes($myContent))
$RichTextBox.Selection.Load($stream, [Windows.DataFormats]::Rtf)
希望这有帮助,
-Oisin
答案 1 :(得分:2)
好的 - 所以我终于通过调整Oisin的帖子来解决这个问题了。
将他标记为“正确”的答案,因为没有他我不会在这里,但我想我会发布我的代码以防将来帮助任何人:
$myContent = gc "c:\myContent.rtf"
$ascii = (new-Object System.Text.ASCIIEncoding).getbytes($myContent)
$stream = new-Object System.IO.MemoryStream($ascii,$false)
$RichTextBox.Selection.Load($stream, [Windows.DataFormats]::Rtf)
干杯,
本