找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 31089|回复: 7

[文本处理] txt文件内容列转行(同列内容合并成一行)

[复制链接]
发表于 2014-5-7 19:19:55 | 显示全部楼层 |阅读模式
大约有100个txt文件要转置一下,就是将每个文件里的列变成行,行变成列(示例见3楼)怎么批处理方便一点?求代码
上传3个示例文件
发表于 2014-5-7 20:31:44 | 显示全部楼层
请问楼主什么叫转置...不说清规则怎么帮你呢?
 楼主| 发表于 2014-5-7 21:09:24 | 显示全部楼层
回复 2# CrLf
转置就是 ,比如  1  2   3
                        4   5   6
                        7   8    9     
转成            1  4   7
                   2  5   8
                  3   6   9
 楼主| 发表于 2014-5-7 21:17:18 | 显示全部楼层
回复 2# CrLf

坛子里搜了一下,有位仁兄写了这个批处理
http://www.bathome.net/thread-10273-1-1.html
我运行了一下,中间两列数据转置后就丢失了一大半
发表于 2014-5-8 17:19:03 | 显示全部楼层
本帖最后由 CrLf 于 2014-5-8 17:32 编辑
  1. @echo off
  2. set x=0
  3. rd /s /q 测试&md 测试
  4. for %%a in (*.txt) do (
  5.         setlocal enabledelayedexpansion
  6.         (for /f "delims=" %%b in (%%~sa) do (
  7.                 set /a y=0,x+=1
  8.                 for %%c in (%%b) do (
  9.                         set /a y+=1
  10.                         set "_!x!_!y!=%%c"
  11.                 )
  12.         )
  13.         set /a x'=x-1
  14.         for /l %%b in (1 1 !y!) do (
  15.                 for /l %%c in (1 1 !x'!) do (
  16.                         set /p"=!_%%c_%%b!        "
  17.                 )
  18.                 for %%c in (!x!) do echo;!_%%c_%%b!
  19.         ))<nul >测试\%%a
  20.         endlocal
  21. )
  22. pause
复制代码
发表于 2014-5-8 17:32:52 | 显示全部楼层
如果文件大的话,这样更快:
  1. @echo off
  2. rd /s /q 测试&md 测试
  3. for /l %%a in (1 1 5) do call :getY %%a
  4. pause&exit/b

  5. :getY
  6. for %%a in (*.txt) do (
  7.         for /f "tokens=%1" %%b in (%%~sa) do set /p"=%%b        "
  8.         echo;
  9. )<nul >>测试\%%a
复制代码
发表于 2014-5-8 18:02:31 | 显示全部楼层
用excel的复制粘贴即可实现转置。
安全可靠+快速。
自动的话,宏,excel插件,vbs,powershell都可以。
我记得前几天坛子里有个家伙说精通vba,问问他。。。
 楼主| 发表于 2014-5-15 11:41:48 | 显示全部楼层
回复 5# CrLf


    版主,用这个代码处理文档为什么速度会越来越慢?好几个小时只处理了几天个,到后来处理每个文档所花时间越来越多
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 23:13 , Processed in 0.018915 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表