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

Чтение строк из файла и запись каждой в свой Label

29.03.2007, 23:58. Показов 1908. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Очень нужно сделать так, что бы скажем на форме было скажем 6 лайблов, и был задан файл скажем test.txt. Так вот надо что бы первые шесть строк были .caption в лейблах...Помогите пожалйста!!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.03.2007, 23:58
Ответы с готовыми решениями:

Чтение строк текста из файла и запись каждой в свою переменную
В файле input.txt две строки, необходимо чтобы прога прочитала первую строку и записала ее в переменную LineA, а вторую строку в переменную...

Label запись и чтение из файла
Как сделать так что бы: Я пишу текст в Label , нажимаю button1 и текст который я написал в label сохраняется в файл, потом когда...

Запись каждой строки файла в свой массив
Есть файл, там допустим вот так: 1 2 3 4 5 6 7 8 9 9 Первую строку записать хочу в один массив, вторую во второй, хочу через...

3
0 / 0 / 1
Регистрация: 08.03.2007
Сообщений: 21
30.03.2007, 00:21
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Передаю текст класса, который использую для локализации приложения
Текстовый файл состоит из 2 частей метки и текста локалазации
На форме каждому объекту в tag метку и локализую с помощью метода LoadResStr

При необходимости пришлю на e-mail полный пример

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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
Option Explicit
 
Private Type TRec
  ID As String
  StrSeek As Long
End Type
 
Private IsOpened As Boolean
Private FileDescr As Integer
Private CurPos As Long
Private IDTable() As TRec
Private IDCount As Long
 
Public Sub CloseRes()
  If IsOpened Then
    Close FileDescr
    IsOpened = False
  End If
End Sub
 
Public Function LoadResStr(sID As String, ParamArray vInsert() As Variant) As String
' находит строку с нужным идентификатором, и
' если были переданы дополнительные параметры, заменяет в найденой
' строке включения типа |1, |2 на соответствующие параметры
' для ускорения поиска предполагается, что идентификаторы отсортированы по алфавиту
 
  On Error GoTo errHand
  
  If sID = '' Then
    LoadResStr = ''
    Exit Function
  End If
  
  If Not IsOpened Then
    LoadResStr = ''
    Exit Function
  End If
  
  Dim ReadCont As String
  Dim bFound As Boolean
  Dim StartPos As Long
  
  If sID < IDTable(CurPos).ID Then CurPos = 0
  StartPos = CurPos
  bFound = False
  Do While CurPos < IDCount
    If sID = IDTable(CurPos).ID Then
      Seek FileDescr, IDTable(CurPos).StrSeek
      Line Input #FileDescr, ReadCont
      bFound = True
      Exit Do
    End If
    CurPos = CurPos + 1
  Loop
  
  If Not bFound Then
    CurPos = 0
    Do While CurPos < StartPos
      If sID = IDTable(CurPos).ID Then
        Seek FileDescr, IDTable(CurPos).StrSeek
        Line Input #FileDescr, ReadCont
        bFound = True
        Exit Do
      End If
      CurPos = CurPos + 1
    Loop
  End If
  
  If bFound Then
    Dim sArgIndex As String
    Dim iArgIndex As Integer
    Dim PrevPos As Integer
    Dim FindPos As Integer
    Dim sOut As String
    
    PrevPos = 1
    FindPos = InStr(PrevPos, ReadCont, '|')
    While FindPos <> 0
      sOut = sOut & Mid(ReadCont, PrevPos, FindPos - PrevPos)
      sArgIndex = Mid(ReadCont, FindPos + 1, 1)
      If IsNumeric(sArgIndex) Then
        iArgIndex = CInt(sArgIndex) - 1
        If iArgIndex >= LBound(vInsert) And iArgIndex <= UBound(vInsert) Then _
            sOut = sOut & vInsert(iArgIndex)
        PrevPos = FindPos + 2
      ElseIf sArgIndex = '|' Then
        sOut = sOut & '|'
        PrevPos = FindPos + 2
      Else
        PrevPos = FindPos + 1
      End If
      
      FindPos = InStr(PrevPos, ReadCont, '|')
    Wend
    LoadResStr = sOut & Mid(ReadCont, PrevPos)
    
  Else  ' string not found
    LoadResStr = sID
  End If
  
  Exit Function
errHand:
  ShowErrorMessage
  Exit Function
  
End Function
 
 
Public Function OpenRes(sFileName As String) As Boolean
 
  On Error GoTo errHand
  CloseRes
  FileDescr = FreeFile()
  Open sFileName For Input Access Read As FileDescr
  IsOpened = True
  
  Dim ReadID As String
  Dim ReadCont As String
  Dim CurPos As Long
  
  Line Input #FileDescr, ReadCont ' пропустить первую строку - название языка
  'сначала просто подсчитаем количество строк
  IDCount = 0
  Do Until EOF(FileDescr)
    Line Input #FileDescr, ReadCont
    IDCount = IDCount + 1
  Loop
  ReDim IDTable(IDCount - 1) As TRec
  Seek FileDescr, 1
  Line Input #FileDescr, ReadCont
  
  Dim i As Long
  For i = 0 To IDCount - 1
    Input #FileDescr, IDTable(i).ID
    IDTable(i).StrSeek = Seek(FileDescr)
    Line Input #FileDescr, ReadCont
  Next
  
  OpenRes = True
  
  Exit Function
errHand:
  If Err.Number =
0
0 / 0 / 1
Регистрация: 26.03.2007
Сообщений: 127
30.03.2007, 15:40
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

а можно так:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
dim Line as string
open 'c:    est.txt' for input as #1
  line input #1, line
  label1 = line
  line input #1, line
  label2 = line
  line input #1, line
  label3 = line
  line input #1, line
  label4 = line
  line input #1, line
  label5 = line
  line input #1, line
  label6 = line
close #1

или сделать масив label

Visual Basic
1
2
3
4
5
dim Line as string, i as integer
for i = 0 to 5
  line input #1, line
  label(i).caption = line
next
0
0 / 0 / 0
Регистрация: 22.02.2007
Сообщений: 11
30.03.2007, 17:22  [ТС]
Спасибо огромное!!!
Всем кто дал ответ...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.03.2007, 17:22
Помогаю со студенческими работами здесь

Поочередное чтение строк из файла в Label
пожалуйста помогите написать код программы чтобы при нажатии на кнопку в лейбле по очередно выводилось предложение из файла как в Tip of...

Чтение строк из файла и обработка каждой индивидуально
Есть файл, нужно прочитать каждую строку и по-свойски обработать Вопрос, как прочитать каждую строку? Изначально не знаем сколько их там....

Запись и чтение строк из файла
Нужно доработать код! Задание полное таково: создать файл, вбить в него две строки (я так понимаю можно сделать это в коде программы, а...

Чтение из файла и запись строк в массив
Здравствуйте! Сейчас пишу свою реализацию алгоритма FIFS и возникла проблема с записью данных из файла в массив. Формат входных данных в...

Чтение 2 строк из файла и запись в массив
Если строки стандартной длины - 255 символов, то проблем нет... проблема возникает, когда строка может содержать довольно больше...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это дополнительная запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru