На форме есть контролы: MonthView,TextBox,CommandButton.
Есть файл,куда записываются данные в формате: Date,string. К примеру:
#2012-01-24#,"1234567"
#2012-01-10#,"ывапролшгрнпас"
#2012-01-25#,"khxvnnmm,mnbvcx"
#2012-03-08#,"Женский День"
MonthView1_DateClick(ByVal DateClicked As Date) открывает TextBox,в котором содержится строка(запись) из файла в соответствии с датой.
- Код: Выделить всё
Private Sub ChckEntry()
Open DataPath For Input As #1
While Not EOF(1)
Input #1, EntryDate, EntryText
If EntryDate = DtClick Then GoTo Line1
Wend
EntryDate = 0
EntryText = ""
'if date & text=0 to entry ne bulo
Line1:
Close #1
Text1.Text = EntryText
End Sub
Мне нужно изменить или удалить текст одной записи и записать обратно в файл. Если техт="" то убрать всю запись с датой.
- Код: Выделить всё
Private Sub CommandButton_Click()
Open DataPath For Append As #1
Write #1, DtClick, Text1.Text
Close #1
Text1.Text = ""
End Sub
Append ест-ссно добавляет новую запись с той же датой в конец файла. Output удаляет файл и создаёт новый с последней записью.
Random-тоже не выход.
Можно сделать счётчик,который определит порядковый номер записи тока куда его потом засунуть (я в курсе)
Можно отрыть весь файл в массив сделать изменения и сохранить Output-ом только это как-то громоздко и памяти много займёт.
Как можно изменить или удалить одну запись в самом файле ?