为什么使用utf-8的编码会产生乱码?
而使用ANSI编码却没啥问题,而且执行正常?
bat文件如下:
- Java code
@title 备份数据库@bcp "SELECT * FROM sportSys.dbo.competitions where sportSys.dbo.competitions.userId="+%1 queryout %2competitions.xls -T -c >>%3log.txt@bcp "SELECT * FROM sportSys.dbo.item where sportSys.dbo.item.userId="+%1 queryout %2item.xls -T -c >>%3log.txt@bcp "SELECT * FROM sportSys.dbo.itemType where sportSys.dbo.itemType.userId="+%1 queryout %2itemType.xls -T -c >>%3log.txt@bcp "SELECT * FROM sportSys.dbo.agenda where sportSys.dbo.agenda.userId="+%1 queryout %2agenda.xls -T -c >>%3log.txt@pause@exit
[color=#FF0000]如果是ANSI编码,则Java中通过
- Java code
Runtime.getRuntime().exec
但是,如果编码是UTF-8,则提示如下错误:[/color]
- HTML code
E:\Tomcat6.0\bin>锘緻bcp "SELECT * FROM sportSys.dbo.competitions where sportSy.dbo.competitions.userId="+9 queryout E:\Tomcat6.0\webapps\SportSys\download\9\ompetitions.xls -T -c 1>>E:\Tomcat6.0\webapps\SportSys\download\9\log.txt'锘緻bcp' 不是内部或外部命令,也不是可运行的程序或批处理文件。请按任意键继续. . .
第一条语句不执行,报错,
后面的语句能正常执行!
------解决方案--------------------
天朝用户windows一把但是GBK编码,只不过说成是ansi,用utf-8当然不行咯,你试下gbk
------解决方案--------------------
保存bat时修改编码
------解决方案--------------------
用定时器设计的门铃