Answers:
默认情况下,cat
(Get-Content
)假定文件的内容是文本,特别是UTF-16LE。当对文本处理的假设应用时,像MP3这样的二进制文件会受到损坏。
命令处理器type
保留字节,因此您可以保留该部分。要使用PowerShell提取文件,您应该小心使用字节:
[IO.File]::WriteAllBytes('C:\full\path\to\output.mp3', (cat 'F:\MainFile.txt:Message.mp3" -Encoding Byte))
type
和Get-Content
命令中查看二进制文件的选项。