将多个文本文件合并为一个

时间:2013-07-05 08:01:33

标签: c++ windows text-files command-prompt

我有几千个文本文件的目录。每个文本文件都有一行。要合并它们,我在Windows的命令提示符中使用了copy * aggregate.txt,但是这些行已被复制,它们之间没有任何间距。

那么如何组合文件以使线条分开?每次复制文件时插入换行符?

如果在命令提示符或使用Windows批处理程序中有办法,或者我可以通过编写c ++程序来完成它,如果你能告诉我如何逐个读取目录中的所有文件。

2 个答案:

答案 0 :(得分:1)

这可能需要一段时间才能启动,因为涉及到数千个文件 更改d:\folder并将批处理文件放在不在d:\ folder

中的其他位置
@echo off    
pushd "d:\folder"
for /f "delims=" %%a in ('dir /b /a-d ') do (
type "%%a" >>aggregate.txt
echo.>>aggregate.txt
)
popd

或者这应该立即开始:

@echo off
pushd "d:\folder"
dir /b /a-d >"c:\file.tmp"
for /f "delims=" %%a in (c:\file.tmp) do (
type "%%a" >>aggregate.txt
echo.>>aggregate.txt
)
del "c:\file.tmp"
popd

答案 1 :(得分:0)

@ECHO OFF
SETLOCAL
(
FOR %%i IN (*) DO if /i not "%%i"=="aggregate.txt" TYPE "%%i"&ECHO(
)>aggregate.txt

就个人而言,我会用这个......