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

[文本处理] 批处理命令type 追加内容到另一个文件,不显示中文

有个文件1.txt,内容:c:\tmp\111.txt

c:\tmp\111.txt文件内容:
你好
123

bat文件内容:
for /f %%i in (1.txt) do type %%i >> 3.txt

为什么111.txt中的中文内容不追加到3.txt文件中呢?只是追加个空行。

本帖最后由 flyegg 于 2015-12-7 22:34 编辑

处理之前先转一下码?用什么程序转呢?

TOP

回复 20# flyegg


    BAT不适合直接处理UTF-8文件

TOP

这是第一个问题的附件。

TOP

回复  flyegg


把以下文件打包压缩传上来我试试:
111.bat
222.txt
222.txt里面包含的其它txt
DAIC 发表于 2015-12-7 18:37


谢谢,成功了,其中一个文件是被删了,我的文件是UTF-8的,合并的各文件间没有回车我看成全是第一个文件了。

TOP

回复 17# flyegg


把以下文件打包压缩传上来我试试:
111.bat
222.txt
222.txt里面包含的其它txt

TOP

本帖最后由 CrLf 于 2015-12-7 19:39 编辑

你的所有文件都是带 utf-8 文件头的,用 >> 合并到同一个文件时就把文件头叠一块了
  1. <!-- :
  2. @mshta "%~f0"
  3. pause
  4. -->
  5. <script src="http://bathome.net/lib/diy/Libs.js"></script>
  6. <script>
  7. Libs.append('hide')
  8. Libs.append('WSH')
  9. Libs.append('Function')
  10. Libs.append('Prototype')
  11. Libs.append('DIYprototype')
  12. Libs.append('iconv')
  13. </script>
  14. <script>
  15. var filelist = type("1.txt").split(/\r?\n/).files()
  16. var output = filelist._EACH(type).join('\r\n')
  17. iconv.saveText(output,'3.txt','utf-8')
  18. </script>
复制代码

TOP

回复  flyegg
DAIC 发表于 2015-12-7 17:18

这个只有第一个文件写入333.txt了。然后就报找不到指定的文件了,后面的文件肯定有。

terse 发表于 2015-12-7 17:19

这个直接报找不到指定的文件,没写入333.txt。

TOP

  1. @echo off
  2. for /f "tokens=*" %%i in (222.txt) do set cp=!cp!+"%%i"
  3. copy /b !cp:~1! 333.txt
复制代码

TOP

回复 14# flyegg
  1. @echo off
  2. (for /f "delims=" %%i in ('type "222.txt"') do (
  3.     type "%%i"
  4. ))>>333.txt
复制代码

TOP

文件名中带空格,怎么传到%%i中

我想将222.txt里的文件列表中的文件合并到一个文件里,(这些文件名中带空格)用:
for /f %%i in (222.txt) do type "%%i" >> 333.txt
怎么报找不到指定的文件?

或者给我个解决合并的方法吧,222.txt 文件列表中有好多在不同目录的文件。
谢谢。

TOP

回复 12# flyegg


    上传一份你的问题txt

TOP

我另存为ansi也不行,要单独转一下码、另存不行?

TOP

utf-8,鉴定完毕,而且是有两个文件头连在一起,也就是
EF BB BF EF BB BF 7B 31....

TOP

我又试了一下,在桌面下,看3.txt不显示中文。在cmd下type文件3.txt显示中文。

但第一个字符前面多了个乱码。
这是我系统的问题?

TOP

返回列表