powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Scripting.FileSystemObject GetFolder.Files
5 сообщений из 5, страница 1 из 1
Scripting.FileSystemObject GetFolder.Files
    #35707252
Ivashenko Lev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Запускаю такой пример:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Dim fso, f, f1, fc, s
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFolder("C:\X")
Set fc = f.Files
For Each f1 in fc
   s = s & f1.name & vbNewLine
Next
MsgBox s

Он выводит список файлов из каталога C:\X. Вопрос - коллекция Files всегда возвращает отсортированный по именам список файлов? У MS четкого ответа не нашел. У себя экспериментировал - возвращает отсортированный список. Но нужно знать наверняка.
...
Рейтинг: 0 / 0
Scripting.FileSystemObject GetFolder.Files
    #35707298
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нашел статейку по VB 6, где написано.

FileSystemObject limitations

Код: plaintext
1.
When retrieving filenames from the files collection, filenames can’t be sorted.
To return them in a specific order, you must add a subroutine to do it.

Как когда-то читал какую-то статью по SQL, где был вопрос: "Если я ставлю GROUP BY, то данные будут автоматически отсортированы?", затем ответ известного спеца - "Данные будут отсортированы так как нужно, если ты поставишь ORDER BY".
...
Рейтинг: 0 / 0
Scripting.FileSystemObject GetFolder.Files
    #35709028
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivashenko LevВопрос - коллекция Files всегда возвращает отсортированный по именам список файлов? У MS четкого ответа не нашел. У себя экспериментировал - возвращает отсортированный список. Но нужно знать наверняка.Нет, она возвращает реальный порядок файлов каталоге. Просто они у тебя изначально отсортированы оказались. Возможно запускал дефрагментатор?
...
Рейтинг: 0 / 0
Scripting.FileSystemObject GetFolder.Files
    #35710786
Ivashenko Lev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В том и дело, что нет. Специально в пустой каталог копировал файлы вразнобой, чтобы исключить попадание их в каталог в алфавитном порядке. Например, так: f_03, f_01, f_08, f_06, f_04. А функция все равно возвращала их по алфавиту. Но, главное, ясно, что сортировку надо делать самому.
...
Рейтинг: 0 / 0
Scripting.FileSystemObject GetFolder.Files
    #35711787
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivashenko LevВ том и дело, что нет. Специально в пустой каталог копировал файлы вразнобой, чтобы исключить попадание их в каталог в алфавитном порядке.Есть еще такая вещь, как индексированные файловые системы. Они сами по себе могут делать сортировку файлов в каталоге и соотвественно уже на диске файлы будут хранятся в сортированом порядке.
Но итоговый вывод ты сделал правильный: хочешь чтобы список файлов были показан пользователю в сортированом виде - сортируй список сам.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Scripting.FileSystemObject GetFolder.Files
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]