使用批处理使一个TXT文件多行合并一行,加逗号

例:
txt文档内容:
1
2
3
4
5
6
7
8
9
……
处理后:
1,2,3,4,5,6,7,8,
9,……,

如例,合并后需要加英文逗号(最后面也要),然后每8行合并一行

@echo off&setlocal enabledelayedexpansion
set n=0
(for /f "delims=" %%a in (test.txt) do (
set /a n+=1
set /p "s=%%a,"<nul
if !n! geq 8 set n=0&echo
))>#
move # test.txt

将文本文件test.txt的每八行合并成一行,用逗号分隔

追问

1,1,1,2,2,5,56,56,ECHO 处于关闭状态。
测试的时候,多出了后面的那句话,能直接去掉么?

追答@echo off&setlocal enabledelayedexpansion
set n=0
(for /f "delims=" %%a in (test.txt) do (
set /a n+=1
set /p "s=%%a,"<nul
if !n! geq 8 set n=0&echo.
))>#
move # test.txt

应该没有那句话了

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-02-24
set t=
for /f "delims=" %%a in ('type "file.txt"') do (
set t=%t%,%%~a
)
echo %t%
pause追问

抱歉 之前问题补充不知道为什么没有上传,能再看看么?

相似回答