我在编辑文件时遇到问题。它是由票务系统 BMC Remedy 制作的 .ARQ 文件。
我可以在记事本++中打开它,编辑它,一切都很好。但是,当我尝试使用 PowerShell 对其进行编辑时,事情变得一团糟。尽管在视觉上看起来相同,但应用程序的读取方式不同。以下是我所做的一些测试,试图找出问题所在。
get-content monitor.arq | set-content monitor2.arq
Run Code Online (Sandbox Code Playgroud)
结果
Length Name
------ ----
3578 monitor.arq
3585 monitor2.arq
Run Code Online (Sandbox Code Playgroud)
基本上它们的大小不同,并且 monitor2.arq 的功能不像 monitor.arq 那样,在记事本++中视觉上它们是相同的
我想可能是编码问题,所以我尝试了这个。
$code = @("Unicode", "UTF7", "UTF8", "UTF32", "ASCII", "BigEndianUnicode", "Default", "OEM")
for ($a = 0; $a -lt $code.count; $a++) {
Get-Content .\monitor.arq | Out-File -Encoding $code[$a] -FilePath ".\monitor$a-$($code[$a]).arq"
}
Run Code Online (Sandbox Code Playgroud)
结果
Length Name
------ ----
3578 monitor.arq
7172 monitor0-Unicode.arq
4911 monitor1-UTF7.arq
3596 monitor2-UTF8.arq
14344 monitor3-UTF32.arq
3585 monitor4-ASCII.arq
7172 monitor5-BigEndianUnicode.arq …Run Code Online (Sandbox Code Playgroud)