:: Архив конференции по VFP до 2005 года
Asort с descending.
Alv
Автор

Сообщений: 259
Дата регистрации: 27.10.2002
Есть пример

DIMENSION FileList(1,5)
=ADIR(FileList,'c:\*.txt')
FOR i=1 TO ALEN(FileList,1)
FileList(i,3)=CTOT(TRANSFORM(VAL(DTOS(FileList(i,3))),'9999-99-99')+'T'+FileList(i,4))
ENDFOR
?ASORT(FileList,3,1) && как тут написать правильно?
?FileList(1,1),FileList(ALEN(FileList,1),1),ALEN(FileList,1)

Как правильно отсортировать файлы, по убыванию даты-времени?
Ratings: 0 negative/0 positive
Re: Asort с descending.
piva

Сообщений: 18655
Откуда: Курган
Дата регистрации: 24.03.2004
Никак не получеться - я тока через Filer такое сделал




------------------
Часто бывает так, что есть над чем задуматься, а нечем.
Ratings: 0 negative/0 positive
Re: Asort с descending.
Alv
Автор

Сообщений: 259
Дата регистрации: 27.10.2002
Значит базу городить. Грустно.
Ratings: 0 negative/0 positive
Re: Asort с descending.
AleksM

Сообщений: 17881
Дата регистрации: 11.11.2003
DIMENSION FileList(1,5)
=ADIR(FileList,'c:\*.txt')
ASORT(FileList,3,-1,1,0)
FOR i=1 TO ALEN(FileList,1)
FileList(i,3)=CTOT(TRANSFORM(VAL(DTOS(FileList(i,3))),'9999-99-99')+'T'+FileList(i,4))
ENDFOR
*?ASORT(FileList,3,1) && как тут написать правильно?
*?FileList(1,1),FileList(ALEN(FileList,1),1),ALEN(FileList,1)




------------------
Лучше переесть, чем недоспать.
Не спеши, а то успеешь.
Ratings: 0 negative/0 positive
Re: Asort с descending.
Alv
Автор

Сообщений: 259
Дата регистрации: 27.10.2002
2AleksM
Большое спасибо!
Ratings: 0 negative/0 positive
Re: Asort с descending.
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
Hi, Alv!

? ADIR(FileList, GETDIR()+"\*.*")
FOR ln1 = 1 TO ALEN(FileList, 1)
FileList(ln1,3) = CTOT(DTOC(m.FileList(m.ln1, 3)) + " " +
m.FileList(m.ln1, 4))
ENDFOR
?ASORT(FileList, 3, ALEN(FileList, 1), 1)
ACTIVATE WINDOW "Locals"

Устроит?

P.S. VFP8SP1, учитывая известные ограничения на размер массива, и то, что
точность записи времени изменения файла в зависимости от файловой системы
может быть +/-2 сек

P.P.S. Для того чтобы такой код работал, нужно установить SET STRICTDATE TO
1 (или 0) - с 2 не пропустит CTOT() хотя тут его использование не вызывает
никаких неоднозначностей с датами




------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: Asort с descending.
piva

Сообщений: 18655
Откуда: Курган
Дата регистрации: 24.03.2004
o=CREATEOBJECT('Filer.FileUtil')
With o
.SearchPath=<Начальный путь>
.FileExpression=m.mask+"*.xls;*.zip"
.SortBy=5 && - по дате времени
.SortDirection=1 && Обратная сортировка
.Find(0)
If o.Files.Count > 0
For i=1 to o.Files.Count
? .Files.Item(i).Name
? .FIles.Item(i).Path
? .Files.LastWriteTime
Next
EndIf
EndWith




------------------
Часто бывает так, что есть над чем задуматься, а нечем.
Ratings: 0 negative/0 positive


Извините, но у вас нет прав для того, чтобы оставлять сообщения в этом форуме.

On-line: 9 (Гостей: 9)

© 2000-2024 Fox Club 
Яндекс.Метрика