我在 window7 下用 虚拟机中的 archlinux, 共享出一个目录到 archlinux 中, 想用 emacs 来操作:
把此目录下的所有文件 GBK 转换为 UTF-8, 以下这2个命令都用了, 不行
因为这个目录中的文件是从 excel vba 导出的, 有几个文件 它俩不认识, 只认 emacs china-gbk-dos
-
iconv 命令转换 gbk 编码为 UTF-8 编码
-
enca 更简单的命令, iconv 只能单个文件转换
用了这里的命令, 可以完成, 但是总是要确认, 我有 30来个文件, 不会每个都要 Y 下吧
(defun to-unix-eol (fPath)
"Change file's line ending to unix convention."
(let (myBuffer)
(setq myBuffer (find-file fPath))
(revert-buffer-with-coding-system 'chinese-gbk-dos) ;; 这我加的
(set-buffer-file-coding-system 'utf-8-unix nil)
(save-buffer)
(kill-buffer myBuffer)
))
我加了这行, 才行
(revert-buffer-with-coding-system 'chinese-gbk-dos) ;; 这我加的
按照这个网页的说法, 可以转换, 但是 每次总要提示 Y/N, 有什么办法可以, 强制, 不用确认 上面说明了下, shell 并没解决, 因为有 几个文件不认