标题: [文本处理] [已解决]批处理怎么样把文本的行改成列呢? [打印本页]
作者: siwmm 时间: 2009-6-14 13:24 标题: [已解决]批处理怎么样把文本的行改成列呢?
现在有文本1,想把它的行改成列,文本1数据形式假如是这样:
第一行:01a:<tab>6
第二行:01a:<tab>5
第三行:34a:<tab>654
第四行:03a:<tab>258
第五行:02a:<tab>7
第六行:05a:<tab>4
……
行数不定,
上面的第一行:01a 对应6,第二行:01a 对应5,改成列时要把他们对应数值加起来:如 01a 就对应6+5=11
我想得到文本2:
01a <tab> 02a <tab> 03a <tab> 05a <tab> 34a ……(从小到大)
11 <tab> 7 <tab> 258 <tab> 4 <tab> 654 ……
[ 本帖最后由 siwmm 于 2009-6-14 16:32 编辑 ]
作者: tab 时间: 2009-6-14 15:43
- @echo off
- for /f "tokens=1,2" %%i in (1.txt) do set/a .%%i+=%%j
- setlocal enabledelayedexpansion
- for /f "tokens=1,2 delims=.:=" %%a in ('set .^|sort/r') do set var=%%a !var!&set str=%%b !str!
- echo !var!&echo !str!
- )
- pause
复制代码
作者: siwmm 时间: 2009-6-14 16:31
谢谢~
我成功得到文本2
学习了,根据你的代码,做到了由文本2得到文本1的代码了~
[ 本帖最后由 siwmm 于 2009-6-14 16:32 编辑 ]
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |