Board logo

标题: [文本处理] 如何用批处理cmd命令处理unicode编码的文件? [打印本页]

作者: summerflower    时间: 2010-2-27 18:01     标题: 如何用批处理cmd命令处理unicode编码的文件?

  1. @echo off
  2. set /p filename=请输入要处理的文件:
  3. for /f "delims= usebackq" %%a in ("%filename%") do (
  4.     echo %%a>>"%filename%_tmp"
  5. )
  6. del "%filename%"
  7. ren "%filename%_tmp" "%filename%"
复制代码


如果要处理的是unicode编码且含有中文的文件,打开处理后的文件,会发现里面全是乱码

不知道有办法解决这个问题没有?
作者: BatCoder    时间: 2010-2-27 20:09

  1. for /f "delims=" %%a in ('type "%filename%"') do (
复制代码

作者: summerflower    时间: 2010-2-27 21:08

用type命令弄出来的文件倒是没有乱码了,不过中文的标点符号"。"变成了"?"
作者: hlzj88    时间: 2010-2-27 21:33

我通常的做法是
type *.txt>>xxx.txt
这样编码就改变了,然后处理。
作者: BatCoder    时间: 2010-2-27 22:08     标题: 回复 3楼 的帖子

我这里无法重现你说的问题。能否把你的那个unicode文件压缩一下传上来我试试?
作者: summerflower    时间: 2010-2-27 23:31

谢谢BatCoder这么热心
作者: BatCoder    时间: 2010-2-28 11:35

明明是UTF-8编码,你咋说是unicode编码呢?
作者: Spring    时间: 2010-2-28 14:11

你这个文件本身就有乱码啊
作者: summerflower    时间: 2010-3-1 18:41

回BatCoder:utf-8就是unicode编码的一种啊

回Spring:我这个文件是用winxp下的记事本编辑,并保存成utf-8的。如果这样也会产生乱码的话,那我也无语了

顺便问一下,Spring你那个是什么软件啊?
作者: inittab    时间: 2010-3-1 18:49

文件确有乱码。utf-8的
windows 下推荐用editplus. 各种编码完美支持。
作者: Spring    时间: 2010-3-5 10:20

我用的 Notepad2.exe
写代码的都要有个工具才能既快又省事,高级语言的就不说了,对于批处理或者脚本之类的,这个有简单的关键字高亮提示,支持各种编码互换,只有几百K,很好用的。




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2