- Код: Выделить всё
Dim Dictionary() as string
Sub Main
LoadDic Dictionry(), "dic.txt"
End Sub
Public Sub LoadDic(DicArray() As String, DicFile As String)
Dim splt As String, ss, st As String, sl As String, h As Long, hh As Long
FrmMain.lblmain.Caption = "Открытие словаря..."
DoEvents
ffm = FreeFile
h = 1
Open App.Path & "\Dic\dic.txt" For Input As ffm
Input #ffm, sl
ss = Split(sl, " ")
ReDim DicArray(Val(ss(0))) As String
Do While EOF(ffm) = False
Input #ffm, st
DicArray(h) = st
If Not st = "" Then h = h + 1: FrmMain.lblmain.Caption = "Открытие словаря... (" & Format(h / Val(ss(0)), "Percent") & ")"
DoEvents
Loop
ReDim Preserve DicArray(h - 2) As String
Close #ffm
FrmMain.lblmain.Caption = "Загружено слов: " & Format(UBound(DicArray), "# ### ###")
DoEvents
GetStatus
End Sub
Вот кусок кода моей программы над которой я сейчас работаю называется "Орфограф", в продробности вдаваться не буду...
Вопрос вот в чём этот код загружает словарь около 2 654 000 слов в динамический массив, но крайне долго около 30 - 40 секунд
Конечно не очень долго но поверьте не каждый пользователь захочет столько ждать перед каждым запуском, так и жизнь пройдёт....
Вопрос вот в чём как сделать код который делает тоже самое но намного быстрее?
Может существует более рациональный способ, какая-либо альтернатива?