在写文件是遇到了问题,会多出来2个字节,求解答


PowerShell交流中心分类: 文件和注册表在写文件是遇到了问题,会多出来2个字节,求解答
0
jieliuhouzi asked 5年 ago

执行:PS C:\Users\> ‘Hello World’|Out-File C:\Users\\Desktop\1\1.exe
执行完,文件的结果:
FF FE 48 00 65 00 6C 00 6C 00 6F 00 20 00 57 00
6F 00 72 00 6C 00 64 00 0D 00 0A 00
问题:为什么会多出来FF FE 这2个字节?如何才能消除这两个字节?
谢谢大佬

1 Answers
1
Best Answer
Mooser Lee 管理员 answered 5年 ago

你虽然指定扩展名为exe,但是你的数据仍然是文本文件。文本文件的编码不同,会体现在文件开头的2个字节上。如果使用ASCII码的方式输出就不会有前面2个字符:

PS> 'Hello World’|Out-File a.exe -Encoding ascii
PS>  Format-Hex .\a.exe


           Path: C:\Users\v-bal\a.exe

           00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

00000000   48 65 6C 6C 6F 20 57 6F 72 6C 64 0D 0A           Hello World..
jieliuhouzi replied 5年 ago

感谢指点,谢谢