Заполнить массив из текстового файла - VB
Формулировка задачи:
Здравствуйте. Уважаемые программисты, подскажите пожалуйста, как заполнить массив из текстового файла.
1 54723937 21403
2 57449894 21403
3 51529972 21403
4 51114338 21403
5 50051101 21403
6 50050434 21403
7 51516649 21403
8 51484632 21403
9 51353555 21403
10 51516136 21403
11 51484632 21403
Массив = (номер строки, номер колонки). Получается здесь 3 колонки.
Листинг программы
- Dim File As String
- Dim M() As String
- Dim i As Integer
- Dim j As Integer
- Dim k As Integer
- Private Sub Комманда1_Click()
- File = "C:\2.txt"
- Open "C:\2.txt" For Input As #1
- a = Input(FileLen(File), 1)
- Close #1
- M = Split(a, vbNewLine) 'разбиваю на строки
- i = UBound(M)
- For k = 0 To i
- M(k, 0) = Mid(M, 1, 3) ' пытаюсь хотя бы первую колонку присвоить массиву-бесполезно,
- Next k ' то несоответствие типов, то нижний индекс вне...
- Text1.Text = M(0, 0) ' вывести, допустим, первую ячейку
- End Sub
Решение задачи: «Заполнить массив из текстового файла»
textual
Листинг программы
- Option Explicit
- Dim a As String
- Dim File As String
- Dim M() As String
- Dim S() As String
- Dim i As Integer
- Dim j As Integer
- Dim k As Integer
- Private Sub Комманда1_Click()
- File = "C:\1.txt"
- Open File For Input As #1
- a = Input(FileLen(File), 1)
- Close #1
- Cls
- Do While InStr(1, a, " ") > 0 ' если вдруг не один пробел попадётся
- a = Replace(a, " ", " ")
- Loop
- M = Split(a, vbNewLine) 'разбиваю на строки
- i = UBound(M)
- ReDim S(i, 2)
- For k = 0 To i
- For j = 0 To 2
- S(k, j) = Split(Trim(M(k)), " ")(j) '
- Print S(k, j), 'печать в строку
- Next j
- Print 'печать на форму
- Next k
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д