html实现输出文本,处理文本文件并将其内容写入HTML输出

ConvertTo-Html将对象属性转换为列表或表中的值。字符串只有一个属性Length - 这就是您在输出中看到的值。

使用$LineData作为属性值创建一个新对象,您将获得有意义的输出

function TextToHtml

{

$SourceFile = "C:\sample.txt"

$TargetFile = "C:\TestOutput.htm"

$TextData = Get-Content $SourceFile

Foreach ($Line in $TextData) {

$LineData = $LineData + $Line

}

New-Object psobject -Property @{Text = $LineData} | ConvertTo-HTML -Property Text | Out-File $TargetFile

}

要使您的函数更具可重用性,请将源文件路径和目标文件路径转换为参数。

您也不需要遍历$TextData中的每个字符串以将它们相互追加,只需使用-join运算符:

function TextToHtml

{

param(

[string]$SourceFile = "C:\sample.txt",

[string]$TargetFile = "C:\TestOutput.htm"

)

$TextData = Get-Content $SourceFile

$LineData = $TextData -join ''

New-Object psobject -Property @{Text = $LineData} | ConvertTo-HTML | Out-File $TargetFile

}

如果要避免只有一个属性的对象的*标头,请使用-Property参数和ConvertTo-Html明确选择Text属性:

ConvertTo-Html -Property Text

如果要在其自己的表行中显示每一行,请跳过串联并将字符串直接传送到ConvertTo-Html:

function TextToHtml

{

param(

[string]$SourceFile = "C:\sample.txt",

[string]$TargetFile = "C:\TestOutput.htm"

)

Get-Content $SourceFile | ConvertTo-HTML -Property @{Label='Text';Expression={$_}} | Out-File $TargetFile

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值