转换文本/ CSV文件,以UTF-8格式的批处理文件
问题描述:
我编码一个批处理文件,其中WMIC命令给出信息被写入到生成转换文本/ CSV文件,以UTF-8格式的批处理文件
WMIC /node:%%A Volume get systemname,caption,freespace,capacity > temp.txt
临时文件临时文件的输出,但它的编码是UCS-2 Little Endian。
所以,当我试图读取使用for循环的文本文件,
for /f "tokens=1" %%B in (temp.txt) do (
echo %%B
)
这亘古不变的,因为它的编码格式显示任何输出。
一旦我将这个Temp.txt转换为UTF-8/ANSI格式,for循环读取Temp文件。
我可以知道我怎样才能得到WMIC命令的输出UTF-8/ANSI或者如果不是我怎么可以转换UCS-2小端到UTF-8/ANSI
问候
答
可以过滤WMIC的输出到文件转换
WMIC /node:%%A Volume get systemname,caption,freespace,capacity | find /v "" > temp.txt
或者您也可以将文件转换与type
命令
WMIC ..... > temp1.txt
type temp1.txt > temp.txt
或者你也可以直接检索在for
循环
for /f "tokens=1-4 delims=," %%a in (
'wmic /node:%%A Volume get systemname^,caption^,freespace^,capacity'
) do echo %%a %%b %%c %%d
谢谢你的信息,第二个建议帮助。 – Suvojit 2014-10-09 09:37:33