Powershell 将纯文本转换为 html

Powershell convert plain text to html

我在这样的文本文件中有一些文本:

Unit 1: abc

Unit 2: abc

列表继续到第 3,4 单元,.. 有什么方法可以将此文件的内容转换为 .html 格式? 这样它看起来像这样(例如):

<p>Unit 1: abc</p>
<p></p>
<p>Unit 2: abc</p>

谷歌搜索在这方面没有真正帮助我,感谢您的帮助!

Get-Content cmdlet 将从磁盘读取文件,line-by-line,那么您需要做的就是:

  1. 转义输入(如果它包含任何 HTML)
  2. <p>...</p>
  3. 包围每一行

要对输入进行转义,可以使用[System.Web.HttpUtility]::HtmlEncode(),然后用-f字符串格式运算符构造最终的字符串:

Add-Type -AssemblyName System.Web

Get-Content path\to\file.txt |ForEach-Object {
    '<p>{0}</p>' -f [System.Web.HttpUtility]::HtmlEncode($_)
}