Считывание данных из структурированного файла - VB

Узнай цену своей работы

Формулировка задачи:

Всем добрый день. Возник такой вопрос. Имеется файл, в котором записаны числа примерно так:
Листинг программы
  1. 0.1 'тра-та-та
  2. 0.00125 'тра-та-та
  3. 5 'тра-та-та
  4. 0.08 'тра-та-та
  5. 2 'тра-та-та
  6. 0.001 'тра-та-та
  7. 7 'тра-та-та
  8. 0.175 'тра-та-та
  9. 0.17 'тра-та-та
  10. 0.5'тра-та-та
  11.  
  12. 0.1 'тра-та-та
  13. 0.00125 'тра-та-та
  14. 5 'тра-та-та
  15. 0.08 'тра-та-та
  16. 2 'тра-та-та
  17. 0.001 'тра-та-та
  18. 7 'тра-та-та
  19. 0.175 'тра-та-та
  20. 0.64 'тра-та-та
  21. 0.5'тра-та-та
и т.д. (180 строк, может быть и больше, условие должно быть: пока не достигнут конец файла) Необходимо считать эти данные (без пояснений: 'тра-та-та) и записать в массивы, по 10 чисел, они разделены пустой строкой. ПОМОГИТЕ!!!!

Решение задачи: «Считывание данных из структурированного файла»

textual
Листинг программы
  1. Private Sub Command1_Click()
  2.  
  3. Dim i%, j%, f%, S$, fn$
  4. Const c = 10
  5. f = FreeFile
  6. fn = App.Path & "\data.txt"
  7. On Error GoTo er
  8. ReDim a(c, 1)
  9. Me.Cls
  10. i = 1: j = 0
  11. Open fn For Input As #f
  12.      Do While Not EOF(f)
  13.         Line Input #f, S
  14.         If Trim(S) = "" Then
  15. If j <> 10 Then If MsgBox("не " & c & vbNewLine & "Продолжить ?", vbQuestion + vbYesNo) = vbNo Then Exit Sub
  16.            i = i + 1: j = 0
  17.            ReDim Preserve a(c, i)
  18. Me.Print
  19.         Else
  20.            j = j + 1
  21.            a(j, i) = Val(Replace(S, ",", "."))
  22. Me.Print a(j, i); " ";
  23.        End If
  24.      Loop
  25.  Close f
  26. Exit Sub
  27. er: MsgBox Err.Description
  28.  
  29. End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.556 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы