Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
-1 / 0 / 0
Регистрация: 31.10.2018
Сообщений: 69

Быстродействие кода

13.02.2019, 13:48. Показов 695. Ответов 2

Студворк — интернет-сервис помощи студентам
Всем добрый день! Подскажите , пожалуйста, дельные советы по оптимизации кода, простой текстовый файл на 9 строчек обрабатывается больше 20 секунд. Читал, что многое кроется в неграмотно составленных циклах, но остро нуждаюсь в реально эффективных решениях! Заранее спасибо за отклики

Код построчно считывает текстовый файл и удаляет ненужные строки при помощи сравнения:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Private Sub Command5_Click()
Dim F As Long
Dim Fn As String
Dim MyText As String
Dim a(1 To 3) As String
Dim i As Integer
 
Text1.Text = vbNullString
F = FreeFile
Fn = "E:\test.txt"
 
a(1) = "*id=""3""*"
a(2) = "*id=""5""*"
a(3) = "*id=""7""*"
 
Open Fn For Input As #F
Do Until EOF(F)
 
 
n: Line Input #F, MyText
   For i = 1 To 3
     If Not MyText Like a(i) Then
    GoTo m:
    Else
    GoTo n:
    End If
 
m: Next i
Text1.Text = Text1.Text & MyText & vbNewLine
Debug.Print Text1.Text
 
Loop
Close #F
 
Open Fn For Output As #F
Print #F, Text1.Text
Close #F
 
End Sub


Текстовый файл выглядит так:
1
2
3id="3"
4
id="5"5
6
7 id="7"
8
9
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.02.2019, 13:48
Ответы с готовыми решениями:

Вопрос про быстродействие Excel (макрос) и Visual Studio
Здравствуйте. Написал макрос в VBA Excel 2007. Затем перенес код в Visual Studio 2010 Ultimate, отладил. Оказалось, в Studio программа...

Быстродействие кода на C++
Здравствуйте. Есть 2 тестовых кода: 1 на C++, другой на Python. Код на питоне выполняется быстрее, а в моей будущей программе очень важна...

Быстродействие ассемблерного кода
Кое-где прочитал что сейчас некоторые компиляторы генерируют код работающий быстрее чем аналогичный на ассемблере. Так в чём между ними...

2
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
13.02.2019, 14:21
tomhardy96, цикл действительно можно упростить
Visual Basic
1
2
3
4
5
6
7
8
9
  Do Until EOF(F)
    Line Input #F, MyText
    For i = 1 To 3
      If MyText Like a(i) Then GoTo 1
    Next i
    Text1.Text = Text1.Text & MyText & vbNewLine
Debug.Print Text1.Text
 
1 Loop
, но причина торможения на файле из 9 строк не в этом. Возможно, файловые операции.
И довольно странно использовать текстбокс как накопительный буфер для текста - используйте для этого текстовую переменную. При желании запишите ее содержимое в текстбокс один раз после цикла.
Debug.Print необходимо убрать после окончания отладки.
0
-1 / 0 / 0
Регистрация: 31.10.2018
Сообщений: 69
13.02.2019, 14:50  [ТС]
Казанский, если не трудно, более подробно раскрыть тему файловых операций.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.02.2019, 14:50
Помогаю со студенческими работами здесь

Быстродействие управляемого и неуправляемого кода
начал изучать небезопасный код,написал прогу в ней 2 функции одна с управляемым кодом вторая нет,так вот сравнил время выполнения этих...

Можно ли улучшить быстродействие кода?
Маленькая прелюдия. Нашел в сети шахматную программу на бейсике. Прикрутил ее в VBA в эксел. Играет вроде неплохо, но быстродействия VBA...

Обфускация кода в SmartAssembly снижает быстродействие
Я заметил, что обфускация кода в SmartAssembly значительно роняет быстродействие программы. Но в SmartAssembly есть много разных опций...

Какие есть хитрости и трюки, уменьшающие размер кода и увеличивающие быстродействие
скажите какие есть хитрости и трюки в языкe c++ уменьшающие размер кода и увеличивающие быстродействие например тернарный оператор...

Быстродействие
Кто нибудь знает если писать приложение под web и писать к нему агенты что будет быстрее выполняться LotusScript или Java агенты?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru