我遇到了在批处理脚本中从文本文件设置变量的问题。
文本文件中只有一行,它是testabc
。
脚本是
set /p p_password=<c:\temp\passport.txt
echo %p_password%
echo语句应该有testabc
,但它实际上有■t
以下。
我甚至尝试使用for
循环
for /f "delims=" %%a in (c:\temp\passport.txt) do set p_password=%%a
echo %p_password%
我仍然得到相同的输出; ■t
非常感谢任何帮助。
答案 0 :(得分:1)
是的,我可以确认使用不同的文件编码格式可以解决这个问题。
使用问题中提到的输入文本文件,并使用UltraEdit
保存文本文件,下面列出了不同编码格式的结果:
testabc
testabc
■t
testabc
t
■
testabc
如前面评论员所述,您的文字文件似乎已保存为Byte order mark。