PureBasic - форум

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » PureBasic - форум » Программирование на PureBasic » Поиск файлов


Поиск файлов

Сообщений 1 страница 2 из 2

1

Пример поиска файлов, скачать

https://c.radikal.ru/c03/2102/a9/806fe00a887f.png

тут на Linux, но и на Windows должно работать, не проверял ещё.

Отредактировано AZJIO (22.02.2021 06:38:12)

0

2

Предыдущая версия работает быстро, так как там используется CopyMemoryString. В расширенной версии очень сложно определить сколько выделить памяти. Например "Полный путь" надо взять максимально возможную длину пути. Для ANSI в Windows вроде 260 символов, для юникода вроде 32000. Допустим это можно вычислить как в предыдущей версии, так как список путей вычисляется первым, но как вычислить имя файла, то есть фактически будет двойной запрос функции сначала GetFilePart для вычисления, а потом для добавления. Работает жутко медленно, если список файлов предыдущей версии получен ха 170мсек, то расширенной 94000мсек, в 553 раза дольше. Даты имеют ширину стандартную их можно получить ширина*количество, размеры тоже можно задать с запасом. Хотя бы вычислить приблизительную величину и задать с тройным запасом.

Может проверять позицию указателя, чтобы довыделить. Допустим выделить мегабайт, не хватило, ещё выделить мегабайт. Сейчас на 40 000 файлов данные на 2,4Мб. В принципе по 3 Мб можно выделять.

Отредактировано AZJIO (Вчера 01:42:12)

0


Вы здесь » PureBasic - форум » Программирование на PureBasic » Поиск файлов