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

[文本处理] [已解决]批处理生成文本后的编码问题

各位老师,新年好~

本人在写cmd命令的时候遇到一个问题无法得到有效解决,恳请论坛老师们相助:
  源脚本因为有中文路径所以采用了ANSI编码格式来保存,在这个脚本中需要执行生成一个带有中文的但编码一定要是 UTF-16 LE 的 .ini 配置文件,且不会出现乱码。
类似于我们windows系统中的 desktop.ini 这个文件这种。不知道用cmd能不能实现。

===============================================

最终采取:如何把文件夹下*.reg的ANSI编码格式文件,转换为UTF-16LE编码格式?
这篇帖子3楼老师的PowerShell方案。本帖自行解决,至此办结。谢谢各位热心回复的老师们,学习了很多!
1

评分人数

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

执行前先弄个chcp 65001,不过好像是UTF-8
回望过去,展望未来。

TOP

chcp 1200
另一个
chcp 1201
看看哪个是,
恢复用
chcp 936

TOP

  1. file = "1.txt"
  2. Set oStream = CreateObject("ADODB.Stream")
  3. oStream.Type = 2    'adTypeText
  4. oStream.Mode = 3    'adModeReadWrite
  5. oStream.Charset = "UTF-8"    '原编码
  6. oStream.Open()
  7. oStream.LoadFromFile file
  8. s = oStream.ReadText()
  9. oStream.Close()
  10. oStream.Charset = "UTF-16"     '目标编码
  11. oStream.Open()
  12. oStream.WriteText s
  13. oStream.SaveToFile file, 2    'adSaveCreateOverWrite
  14. oStream.Close()
复制代码

批护理开头先弄个chcp 65001
批处理最后用这个vbs转换文件编码

QQ 20147578

TOP

回复 3# xp3000


    提示 无效代码页,其实发帖之前我搜到过这个范例,但是不知道为什么我这边用不了。

TOP

最终采取 如何把文件夹下*.reg的ANSI编码格式文件,转换为UTF-16LE编码格式?
这篇帖子3楼老师的PowerShell方案。本帖自行解决,至此办结。谢谢各位热心回复的老师们,学习了很多!

TOP

返回列表