单个文件到多个文件

时间:2014-08-18 11:24:27

标签: batch-file

我有一个包含4列和279行的csv文件,我需要将其拆分为单个文件。

我目前正在使用以下代码但是只有一个小问题,我需要它在创建新文件时为每个列添加一个新行。目前它打印出一行中的4列

例如

23/07/2014 11:00    24/07/2014 09:27    35386515447 1771969 s walsh

需要

23/07/2014 11:00

24/07/2014 09:27

35386515447

1771969 s walsh

@ECHO OFF
SETLOCAL
SET "destdir=c:\destdir"
FOR /f "tokens=1*delims=:" %%a IN ('findstr /n "." Message.txt') DO (
 >"%destdir%\filename%%a.txt" ECHO(%%b)
GOTO :EOF

2 个答案:

答案 0 :(得分:0)

测试一下 - 将其粘贴到记事本中,并在其中显示TAB替换为制表符。

@ECHO OFF
SETLOCAL
SET "destdir=c:\destdir"
FOR /f "tokens=1,*delims=:" %%a IN ('findstr /n "." Message.txt') DO (
  FOR /f "tokens=1,2,3,4 delims=TAB" %%b IN ("%%a") DO (
    >>"%destdir%\filename%%a.txt" ECHO(%%b
    >>"%destdir%\filename%%a.txt" ECHO(%%c
    >>"%destdir%\filename%%a.txt" ECHO(%%d
    >>"%destdir%\filename%%a.txt" ECHO(%%e
  )
)

答案 1 :(得分:0)

我找到了一个解决方法,我将它们全部放入以逗号分隔的单个文件中,打开记事本++中的所有文档并用\ n

替换所有逗号