Board logo

标题: 请教下txt文件怎么按每行的字符数排列 [打印本页]

作者: ldlcau     时间: 2007-4-10 05:32    标题: 请教下txt文件怎么按每行的字符数排列

可以用DOS命令实现吗?
例如:
     -------------------
1
23123
12
435345
3
-------------------

排列后变为

-------------------
1
3
12
23123
435345
-------------------
作者: lxmxn     时间: 2007-4-10 13:13

Re ldlcau:

用了一个笨方法来达到目的,只适合处理小文件。
@Echo Off&Setlocal EnableDelayedExpansion
for /f "delims=" %%a in (a.txt) do echo %%a>%%a.ok
for /f "delims=" %%a in ('dir /a-d/b/os *.ok') do (echo %%~na>>file.ext)
for /f "delims=" %%a in (a.txt) do del "%%a.ok"
start notepad file.ext

作者: youxi01     时间: 2007-4-10 21:18
纯数字 用sort 似乎更快
作者: lxmxn     时间: 2007-4-11 00:42


  Quote:
Originally posted by youxi01 at 2007-4-10 08:18:
纯数字 用sort 似乎更快


兄写一个出来吧,呵呵~

作者: ldlcau     时间: 2007-4-11 01:12


  Quote:
Originally posted by lxmxn at 2007-4-10 12:13 AM:

用了一个笨方法来达到目的,只适合处理小文件。
[code]
@Echo Off&Setlocal EnableDelayedExpansion
for /f "delims=" %%a in (a.txt ...

非常感谢,可以实现

要是能过滤一下首尾空格就好了

[ Last edited by ldlcau on 2007-4-10 at 12:14 PM ]
作者: lxmxn     时间: 2007-4-11 01:21


  Quote:
Originally posted by ldlcau at 2007-4-10 12:12:
非常感谢,可以实现

要是能过滤一下首尾空格就好了
[ Last edited by ldlcau on 2007-4-10 at 12:14 PM ]


哪里有空格,可以说清楚吗?

如果有空格,那就是你的原文件里面有空格了。

作者: ansipeter     时间: 2007-4-11 05:23

@echo off&setlocal enabledelayedexpansion
set/p a=输入最大数的位数:
for /l %%a in (1,1,%a%) do (
set b=!b![0-9]
call :CBD !b!
)
notepad cc.txt
goto:eof
:CBD
(findstr /r "^%1$" bb.txt 2>nul|sort)>>cc.txt