Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / VB 6.0 как каждую строку файла сделать элементом массива / 15 сообщений из 15, страница 1 из 1
16.08.2018, 12:55
    #39688758
shushan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB 6.0 как каждую строку файла сделать элементом массива
добрый день

VB 6.0 как каждую строку файла сделать элементом массива для дальнейшего использования

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
Dim DataKeyArray() As String
Dim DataValueArray() As String
Dim i, n, k
k = 0
Path = "C:\Documents and Settings\Desktop\datafile.txt"
DF = FreeFile
Open Path For Input As #DF
Do Until EOF(DF)
Line Input #DF, a
k = k + 1
Loop
Close #DF
Open Path For Input As #DF
For i = 1 To k
ReDim DataKeyArray(k)
Do Until EOF(DF)
Line Input #DF, DataKeyArray(i)
Picture7.Print DataKeyArray(i)
Loop
Next
Close #DF

Модератор: Учимся использовать тэги оформления кода - FAQ
...
Рейтинг: 0 / 0
16.08.2018, 13:01
    #39688768
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB 6.0 как каждую строку файла сделать элементом массива
Redim внутри цикла каждый раз стирает ваши данные. Достаточно сделать его один раз перед циклом
...
Рейтинг: 0 / 0
16.08.2018, 13:14
    #39688781
shushan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB 6.0 как каждую строку файла сделать элементом массива
Цитируемое сообщение не найдено.
так
Private Sub Command13_Click()
Dim DataKeyArray() As String
Dim DataValueArray() As String
Dim i, n, k
k = 0
Path = "C:\Documents and Settings\Kinetics\Desktop\dll\datafile.txt"
DF = FreeFile
Open Path For Input As #DF
Do Until EOF(DF)
Line Input #DF, a
k = k + 1
Loop
Picture6. Print k
Close #DF
ReDim DataKeyArray(k)
Open Path For Input As #DF
For i = 1 To k
ReDim Preserve DataKeyArray(k)
Do Until EOF(DF)
Line Input #DF, DataKeyArray(i)
Picture7. Print DataKeyArray(i)
Loop
Next
Close #DF
For i = 1 To k
Print DataKeyArray(4)
Next
End Sub
...
Рейтинг: 0 / 0
16.08.2018, 13:15
    #39688784
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB 6.0 как каждую строку файла сделать элементом массива
shushanкак каждую строку файла сделать элементом массива для дальнейшего использования
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Dim strings() As String
Dim fso As Object, txt As Object
Const Path As String = "C:\Documents and Settings\Desktop\datafile.txt"

Set fso = CreateObject("Scripting.FileSystemObject")
Set txt = fso.OpenTextFile(Path)
strings = Split(txt.ReadAll, vbNewLine)
txt.Close
Set txt = Nothing
Set fso = Nothing
...
Рейтинг: 0 / 0
16.08.2018, 13:18
    #39688788
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB 6.0 как каждую строку файла сделать элементом массива
Akinashushanкак каждую строку файла сделать элементом массива для дальнейшего использования
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Dim strings() As String
Dim fso As Object, txt As Object
Const Path As String = "C:\Documents and Settings\Desktop\datafile.txt"

Set fso = CreateObject("Scripting.FileSystemObject")
Set txt = fso.OpenTextFile(Path)
strings = Split(txt.ReadAll, vbNewLine)
txt.Close
Set txt = Nothing
Set fso = Nothing

разница в читабельности видна не вооруженным взглядом, я чуть глаза не поломал с 1 поста, надеюсь автору не надо читать файлы 10 гб.
...
Рейтинг: 0 / 0
16.08.2018, 13:24
    #39688795
shushan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB 6.0 как каждую строку файла сделать элементом массива
Roman MejtesAkinaпропущено...

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Dim strings() As String
Dim fso As Object, txt As Object
Const Path As String = "C:\Documents and Settings\Desktop\datafile.txt"

Set fso = CreateObject("Scripting.FileSystemObject")
Set txt = fso.OpenTextFile(Path)
strings = Split(txt.ReadAll, vbNewLine)
txt.Close
Set txt = Nothing
Set fso = Nothing

разница в читабельности видна не вооруженным взглядом, я чуть глаза не поломал с 1 поста, надеюсь автору не надо читать файлы 10 гб.

как потом обратиться к массиву мне надо с ним работать , с каждым элементом
...
Рейтинг: 0 / 0
16.08.2018, 13:26
    #39688798
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB 6.0 как каждую строку файла сделать элементом массива
Roman Mejtesнадеюсь автору не надо читать файлы 10 гб.это как раз недостаток алгоритма Akina
shushanкак потом обратиться к массивукак обычно, strings - это массив
...
Рейтинг: 0 / 0
16.08.2018, 13:27
    #39688799
shushan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB 6.0 как каждую строку файла сделать элементом массива
Shocker.ProRoman Mejtesнадеюсь автору не надо читать файлы 10 гб.это как раз недостаток алгоритма Akina
shushanкак потом обратиться к массивукак обычно, strings - это массив

выдает type mismatch
...
Рейтинг: 0 / 0
16.08.2018, 13:29
    #39688803
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB 6.0 как каждую строку файла сделать элементом массива
Код, который выдает ошибку нам самим придумать или покажете?
...
Рейтинг: 0 / 0
16.08.2018, 13:32
    #39688807
shushan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB 6.0 как каждую строку файла сделать элементом массива
Shocker.ProКод, который выдает ошибку нам самим придумать или покажете?
просто
? strings
...
Рейтинг: 0 / 0
16.08.2018, 13:33
    #39688811
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB 6.0 как каждую строку файла сделать элементом массива
shushan? stringsА что по вашему должно случиться? Если хотите отобразить элементы массива, используйте цикл
...
Рейтинг: 0 / 0
16.08.2018, 13:38
    #39688818
shushan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB 6.0 как каждую строку файла сделать элементом массива
Shocker.Proshushan? stringsА что по вашему должно случиться? Если хотите отобразить элементы массива, используйте цикл
For i = 1 To 10
Picture7.Print strings(i)
Next
так выводит , но количество строк я не знаю , как правильно сделать цикл?
...
Рейтинг: 0 / 0
16.08.2018, 13:43
    #39688824
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB 6.0 как каждую строку файла сделать элементом массива
shushanно количество строк я не знаюнеужели это так сложно?
https://yandex.ru/search/?text=vb6 как узнать размер массива&clid=2207714&lr=213
...
Рейтинг: 0 / 0
16.08.2018, 13:47
    #39688831
shushan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB 6.0 как каждую строку файла сделать элементом массива
Shocker.Proshushanно количество строк я не знаюнеужели это так сложно?
https://yandex.ru/search/?text=vb6 как узнать размер массива&clid=2207714&lr=213

совсем забыла, спасибо
...
Рейтинг: 0 / 0
16.08.2018, 14:26
    #39688879
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB 6.0 как каждую строку файла сделать элементом массива
Shocker.Proэто как раз недостаток алгоритма Akinaну да... а массив на десять гектар - не недостаток... не съест, как ни грузи.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / VB 6.0 как каждую строку файла сделать элементом массива / 15 сообщений из 15, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]