我稍微换一下思路,应该说是尽量的通用了……如果某文本太过畸形 那也是没办法的事了……
文本内容更新为:- 111111111111111111111 98912 张三
- 222222222222222222 150020 李四四
- 333333333333333333333 360000 王五
- 4444444444444444444321542365445432453243243423432 11111143242342332 赵六六
- 555555555555555555 222 田七
- 666666666666666666666 999999 舞吧
复制代码
- @echo off
- mode con cols=100 lines=20
- setlocal enabledelayedexpansion
- for /l %%a in (1,1,80) do set kong= !kong!
- for /f "eol= tokens=1,2,3" %%a in ('type 1.txt') do (
- set lie1-2=%%a%%b%kong%
- set lie1-2=!lie1-2:~0,80!
- set lie1-2=%%a!lie1-2:%%a%%b=!%%b
- echo,!lie1-2! %%c
- )
- pause
复制代码 原理:例如文本内容为:
ab******1*d
abc*************2********e
用for获得前面的两列
直接组合 则免去了中间的空格:
ab1
abc2
直接加上80个空格
ab1***************************……
abc2***************************……
然后保存前80位。
ab1*********……***
abc2********……***
把空格前移
ab*********……***1
abc********……***2
这样前面的就基本对齐了。后面的第三列 就不用说了…
我觉得应该可以了……至少我自己用不上太通用的,这个代码自己也没有当工具用过
忽忽……加了中文 或者字符……就被淘汰了……
[ 本帖最后由 523066680 于 2008-8-12 15:49 编辑 ] |