[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[注册表类] [已解决]BAT批处理合并reg文件为何乱码?

本帖最后由 飞翔的小鸟 于 2014-1-24 14:10 编辑

有2个reg文件我想合并成一个,a.reg文件删除第一行的Windows Registry Editor Version 5.00 然后导入b.reg,不过我用
  1. findstr /v /r "Windows Registry Editor Version 5" a.reg>>b.reg
复制代码
之后,打开b.reg,发现导入的内容会乱码,后来搜索论坛参考http://bbs.bathome.net/thread-14918-1-1.html这个里面的的代码[code]findstr /vrc:"REGEDIT4" /c:"Windows Registry Editor Version 5\.00" /c:"^$" a.reg>>b.reg[code],发现第一行的Windows Registry Editor Version 5.00 没有被删除.a.reg的内容被全部导入b.reg.该如何处理,请高手指点一下.
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

b.reg文件编码是unicode,你用findstr写入b.reg时默认编码是ansi,所以会乱码
  1. type b.reg>c.reg
  2. findstr /v /r "Windows Registry Editor Version 5" a.reg>>c.reg
  3. ren c.reg b.reg
复制代码
1

评分人数

TOP

本帖最后由 飞翔的小鸟 于 2014-1-21 18:39 编辑

感谢指点,不过不行,ren因为b.reg存在不能改名,而且合并后形成的文件带有2种字体格式. 还带有黑框的符号字符.
我根据你的建议改成这样,但是比较麻烦,不知道有没有简单点的处理.
  1. type a.reg>c.reg
  2. type b.reg>d.reg
  3. findstr /v /r "Windows Registry Editor Version 5" c.reg>>d.reg
  4. del b.reg
  5. del c.reg
  6. ren d.reg b.reg
复制代码
..
刚才没注意.....这个代码执行完,c.reg文件的第3行也不见了就是带[HKEY_USERS...]的这一行也不见了,
有试了一次,要这样才可以....
  1. findstr /v /r /c:"Windows Registry Editor Version 5.00" c.reg>>d.reg
复制代码
但是希望有更简洁的处理方式,...

TOP

oo.4楼有个贴被删除了,就用那个办法...

TOP

返回列表