![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| V.Turecky |
|
|||
|
Unregistered |
Добрый день. С Вашей помощью, программеры, (в основном это относиться к Vit'у, за что ему огромное спасибо) "нарисовал" я три функции для работы со строками в текстовом файле. Вот они... У меня такой вопрос: как можно сделать так, чтобы функция записи строки записывала строку в конец текста, то есть записывала строку самой последней. И чтение происходило по всему файлу для поиска нужной нам строки. То же должно происходить и с удаление. В моем же выполнении все функции работают с нулевой, то есть с самой первой строкой.
|
|||
|
||||
| V.Turecky |
|
|||
|
Unregistered |
1. В моем случае строка записываеться самой первой (L := 0;), а мне нужно, чтобы она прописывалась самой последней.
//Запись строки в файл var Line: TStringList; L: integer; ..... L := 0; if not L = Line.IndexOf(Str) then Line.Insert(L,Str); Line.SaveToFile(FileName); 2. При поиске ищеться тоже первая строка (L:=0;). Как реализовать поиск строки по всему файлу. var Line: TStringList; L: integer; ......... L:=0; if L = Line.IndexOf(Str) then Form1.CheckBox1.Checked := True else Form1.CheckBox1.Checked := False; 3. При удаление тоже ищеться первая строка (L := 0;) и она же удаляеться. Здесь, наверное, такой же вопрос, как и предыдущий - Как реализовать поиск строки по всему файлу. var Line: TStringList; L: integer; ......... L := 0; if L = Line.IndexOf(Str) then Line.Delete(L); Line.SaveToFile(FileName); |
|||
|
||||
| Vit |
|
||||||||
![]() Vitaly Nevzorov ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 10964 Регистрация: 25.3.2002 Где: Chicago Репутация: 48 Всего: 207 |
если через файл открытый как текст то: AssignFile(f, myfilename); Append(f); writeln(f, MyString); CloseFile(f); Если открыт через поток и TStingList то MyStringList.loadfromfile(MyFileName); MyStringList.add(Mystring); MyStringList.savetofile(MyFileName);
По моему уже отвечали на этот вопрос и здесь и на sources.ru
Метод TStrings - Delete
Обращение к любой строке: если t:TStringList то t[10] - это 11 строка методы Delete и Insert требуют номера строки - вставляешь туда номер и идёт вставка/удалени строк, а если надо исправить конкретную строку, то для изменения например 11й строки используешь "t[10]" - работаешь с ней как с обычной строкой. -------------------- With the best wishes, Vit I have done so much with so little for so long that I am now qualified to do anything with nothing Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru |
||||||||
|
|||||||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |