Страница: 1 |
Страница: 1 |
Вопрос: можно ли ускорить этот код
Добавлено: 08.08.07 09:52
Автор вопроса: Bonapart | Web-сайт:
можно ли ускорить этот код, раза в 2
работа над 11 кб файлом занимает порядка пол минуты
Dim a As String
Dim s As Byte
cmd.ShowOpen
a = cmd.FileName
Open a For Binary As 1
While Not (EOF(1))
i = i + 1
Get 1, i, s
DoEvents
Me.Caption = Str(i) + "/" + Str(FileLen(a))
Wend
Close 1
Ответы
Всего ответов: 4
Номер ответа: 1
Автор ответа:
Алексей
black admin
ICQ: 261779681
Вопросов: 87
Ответов: 633
Web-сайт:
Профиль | | #1
Добавлено: 08.08.07 09:57
Dim s As Byte
cmd.ShowOpen
a = cmd.FileName
Open a For Binary As 1
Dim fl As String
fl = Str(FileLen)
While Not (EOF(1))
i = i + 1
Get 1, i, s
If i Mod 1024 = 0 Then
Caption = Str(i) & "/" & fl
DoEvents
End If
Wend
Close 1
Номер ответа: 2
Автор ответа:
Bonapart
ICQ: 175256
Вопросов: 32
Ответов: 108
Web-сайт:
Профиль | | #2
Добавлено: 08.08.07 10:01
пасибо
я даж не ожидал что настолько ускорить можно
Номер ответа: 3
Автор ответа:
Павел
Администратор
ICQ: 326066673
Вопросов: 368
Ответов: 5968
Web-сайт:
Профиль | | #3
Добавлено: 08.08.07 11:05
Можно сократить до 0 секунд. Просто убить весь код, потому что он
никаких полезных действий не делает.
Номер ответа: 4
Автор ответа:
astoro
ICQ: 649109
Вопросов: 31
Ответов: 391
Профиль | | #4
Добавлено: 08.08.07 18:23
я даж не ожидал что настолько ускорить можно
Просто нет смысла выводить в капшн каждую строку, все равно никто прочитать не успеет.
каждую 1024 - и то наверное слишком часто
если файл загружаешь, красивше сделай прогресс-бар.