如何批量将txt文本中每两行合并成一行且第一行在第二行之后

例如:abcd改为:badc最好能编个批处理文件!分不多,先提前谢谢了!我现在有个通过编写批处理来处理的方法,但是每次只能实现将一个较小的txt文本进行上述处理,我要处理... 例如:a
b
c
d
改为:ba
dc
最好能编个批处理文件!分不多,先提前谢谢了!我现在有个通过编写批处理来处理的方法,但是每次只能实现将一个较小的txt文本进行上述处理,我要处理的txt文本比较大,处理不了。分不多,但是真心希望能够有人帮一下。谢谢!
代码如下:
@echo off
for /f "delims=" %%i in (201407.txt)do (
if defined f (
echo %%i&set "f="
) else (
set f=y&set/p=%%i-
)
)<nul >>b.txt
for /f "tokens=1-2 delims=-" %%c in (b.txt) do (
echo %%d%%c>>c.txt
)
del b.txt
move c.txt 201407.txt

201407为我要进行上述操作(指将每两行合并成一行且第一行在第二行之后)的文本的名字。
展开
 我来答
mkw007
2015-04-21 · TA获得超过4270个赞
知道大有可为答主
回答量:6560
采纳率:55%
帮助的人:1634万
展开全部

试试这个看看呀。

更多追问追答
追问
您好!
首先感谢您的耐心解答,批处理的程序我试过很多个了,包括您说的这个,但是它们只能处理一些简单的,比如批量更改文件后缀什么的。我说的这种处理不了,或者是我不知道怎么处理。
追答
是你不知道如何使用。这个东东肯定能实现你的功能要求!您确实太笨!连左右都分不清,不想教你了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sudoku52
2015-04-21 · TA获得超过7万个赞
知道大有可为答主
回答量:1.2万
采纳率:82%
帮助的人:4884万
展开全部
@echo off
setlocal enabledelayedexpansion
set n=1
set fn=201407.txt
(for /f "tokens=*" %%i in ('type "%fn%"') do (
set /a n = 1 - !n!
if !n!==0 set s=%%i
if !n!==1 echo %%i !s!))>temp.txt
move /y temp.txt "%fn%"

 批处理的效率不是太高,如果文本文件太太处理的时间会比较长。

追问
您好,首先感谢您的耐心解答!
按照您的方法我试了下,可以把第一行放在第二行之后,但是第二行的开头部分直接就没有了,这就造成了数据的不完整了。您能再改改吗?
我用很少量的数字数据试了下,是可以的。但是我要处理的是文字,不知道和这个有关系吗?
再次谢谢您,非常感谢!
追答
如果你方便把你测试的数据(能造成第二行开头没有的)放到网盘我试一下吗?
我用自己弄的模拟数据没问题。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式