Board logo

标题: [其他] [已解决]批处理中得@为何被识别为汉字乱码? [打印本页]

作者: QIAOXINGXING    时间: 2011-9-28 22:19     标题: [已解决]批处理中得@为何被识别为汉字乱码?

这是怎么回事,同一段代码的结果:
  1. @echo off
  2. echo 1111111
  3. pause
复制代码

作者: lxzzr    时间: 2011-9-28 23:01

确实莫名其妙...
作者: batman    时间: 2011-9-28 23:21

************************************************************

  对不起,本贴因为标题过于模糊或含有敏感字符而触犯版规!请
楼主在仔细阅读论坛发贴规则后主动修改好标题。同时本贴将暂时禁
止回复,对于因此而给楼主带来的不便我们深表歉意,但也请楼主自
觉遵守和维护论坛秩序,谢谢!

请阅读论坛发贴规则:http://www.bathome.net/thread-963-1-1.html

提示:
        请大家在楼主修改标题并得到管理层认可之前不要给出任何有意义的回复。
        否则一律视为无视论坛纪律扣2分!(管理层和技术组扣4分)
        论坛是大家的,也要靠大家来维护。。。


************************************************************
作者: QIAOXINGXING    时间: 2011-9-29 11:34

标题昨天就已经改了,应该可以回复了吧,这到底是什么情况?????
作者: 601997526    时间: 2011-9-29 11:55

回复 4# QIAOXINGXING


    怎么没看明白你的意思,是说在D:\我的文档\桌面 上执行会乱码还是在CMD窗口中执行会出现乱码呢,不过这两种情况我都试过了,也没出现乱码的问题呀
作者: QIAOXINGXING    时间: 2011-9-29 12:22

回复 5# 601997526

我的意思是:有两个批处理文件,内容一模一样,但是运行结果不一样(见截图),运行结果跟文件的存放路径没关系。
而且,再新建一个.bat文件,是正常的。
实在搞不懂是怎么回事。
作者: BAT1    时间: 2011-9-29 12:25

内容一模一样?
把两个文件作为附件都发出来看一看,
如果真像楼主所说的,
我一定会帮你找出不同的地方。
作者: QIAOXINGXING    时间: 2011-9-29 13:21

回复 7# BAT1


    好的。
大概是用户组权限的原因,不能上传压缩包,所以把.bat 改成 ..txt 上传了。
作者: cjiabing    时间: 2011-9-29 13:23

本帖最后由 cjiabing 于 2011-9-29 13:25 编辑

不要简单地用“乱码”两个字做标题,稍微再具体些。
同一段代码,十分正常的代码,出现乱码,最有可能的是你使用了旧版的搜狗拼音输入法,这个该死的输入法在TXT文本输入代码,有时候就会出现你上面的问题,明明很简单的代码,结果给它弄得乱七八糟,我曾经吃过好几次这方面的亏,写好的代码被它自动修改了。旧版搜狗垃圾的时候,连手机的内存卡都读不出了。不过新版的搜狗应该没有这个问题。

另外,有一种方法:
编辑批处理文件,在记事本里“另存为”,后面的“编码”改为 ANSI 或者 Unicode 保存再试试看。
作者: Hello123World    时间: 2011-9-29 13:25

码制的问题,unicode转成了ansi,第一行的代码@被转成了汉字,导致@echo off失效;

代码效果类似于:
  1. echo 1111111
  2. pause
复制代码

作者: QIAOXINGXING    时间: 2011-9-29 13:36

版主英明!!
果然是这个原因!
另存时编码选择ansi,运行完全正常:
选择utf-8 ,出现@“乱码”:
选择unicode big endia或者unicode,窗口一闪而过。
作者: garyng    时间: 2011-9-29 20:48

如果是以.bat运行的
那你就的注意:
CMD只能辨认ANSI !!
编码也只能选ANSI
如果用其他编码
可以用“翻译”的
看看:http://bbs.bathome.net/viewthread.php?tid=14101
作者: zaixinxiangnian    时间: 2011-9-30 21:23

我也遇到过,是如10楼所说那样的




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