Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Программное обеспечение > Сортировка чисел по порядку


Автор: skeletor 16.3.2007, 17:14
ОС : Windows Xp\2003

Есть текстовый файлик, в нём в каждой строке содержиться число и дальше текст (через табулятор). Нужно его отсортировать от наибольшего к наименьшему числу по математическому признаку. Вручную перегонять в Excel и там сортировать - не катит. Надо автоматизировать этот процесс.

Может есть прогрммы или скрипт как-то можно написать? 

Автор: skeletor 16.3.2007, 18:16
Всем спасибо, проблема решена. Нужно создать 2 скрипта (скрипты не мои)

script1.cmd
Код

@echo off
for /f "tokens=1* delims=;" %%i in ('script2.cmd^|sort /R') do (
    @echo %%j
)

script2.cmd
Код

@echo off
SETLOCAL ENABLEDELAYEDEXPANSION

SET TAB=0000000000000000
for /f "tokens=1* delims=    " %%i in (file.txt) do (
    CALL :LENGTH %%i
    CALL :PRINT %%i !LENGTH! %%j
    )
GOTO :EOF
:LENGTH
SET LENBUF=%~1
SET LENGTH=0
IF "%~1"=="" GOTO :EOF
:LENGTH_START
SET /A LENGTH+=1
IF ""=="!LENBUF:~%LENGTH%,1!" GOTO :EOF
GOTO :LENGTH_START
:PRINT
SET LINE=!TAB:~0,-%2!%1;%1    %3
@echo !LINE!
GOTO :EOF

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)