Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 13.05.2008, 00:57
Кодер Кодер вне форума
Активный
 
Регистрация: 25.02.2008
Сообщения: 395
Репутация: -599
Восклицание Удаление в файле и в списке

list_note(TListView) - список заданий, где значение 3 столбца=названию задания

Требуется удалить из файла строку которая совпадает с названием задания, а также еще 4 следующие строки.

Код:
procedure Tfrm_main.btn_deletenoteClick(Sender: TObject);
var
i:integer;s:string;
FileNote:TStringList;
begin
FileNote:=TStringList.Create;
FileNote.LoadFromFile('note.ejd');
{Удаляем из списка}
list_note.DeleteSelected;
{Удаляем из файла}
i:=0;
while i<>Filenote.Count-4 do
  begin
  s:=String(' '+Filenote.Strings[i]);
  if s=list_note.Items.Item[list_note.ItemIndex].SubItems.ValueFromIndex[1] then
    begin
    FileNote.Delete(i);
    FileNote.Delete(i+1);
    FileNote.Delete(i+2);
    FileNote.Delete(i+3);
    FileNote.Delete(i+4);
    end
  else
    begin
    inc(i,5);
    end;
    FileNote.Free;
  end;
end;
Ответить с цитированием
  #2  
Старый 13.05.2008, 15:39
Кодер Кодер вне форума
Активный
 
Регистрация: 25.02.2008
Сообщения: 395
Репутация: -599
По умолчанию

Что, никто помочь не сможет?
Ответить с цитированием
  #3  
Старый 13.05.2008, 17:50
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,039
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

У тебя же есть сохранение в файл? Просто заного сохрани файл после удаления из ListView.
Ответить с цитированием
  #4  
Старый 13.05.2008, 23:47
Кодер Кодер вне форума
Активный
 
Регистрация: 25.02.2008
Сообщения: 395
Репутация: -599
По умолчанию

У меня нету сохранения в файл..оно мне не требуется
Есть только добавить запись
Ответить с цитированием
  #5  
Старый 14.05.2008, 12:01
Аватар для KOOL
KOOL KOOL вне форума
Активный
 
Регистрация: 06.01.2008
Адрес: Рязань
Сообщения: 306
Версия Delphi: 2009
Репутация: 6150
По умолчанию

Код:
if s=list_note.Items.Item[list_note.ItemIndex].SubItems.ValueFromIndex[1] then
//надо if s=list_note.Items.Item[list_note.ItemIndex].SubItems.Strings[2]
    begin
    FileNote.Delete(i);
    FileNote.Delete(i+1);//так нельзя делать
    FileNote.Delete(i+2);//при удалении строки i строка i+1
    FileNote.Delete(i+3);//становится на ее место. надо 5 раз 
    FileNote.Delete(i+4);//удалить строку i
    end
  else
    begin
    inc(i,5);//почему на 5???
    end;

Последний раз редактировалось KOOL, 14.05.2008 в 12:03.
Ответить с цитированием
  #6  
Старый 14.05.2008, 16:08
Кодер Кодер вне форума
Активный
 
Регистрация: 25.02.2008
Сообщения: 395
Репутация: -599
По умолчанию

5 потому как у меня структура базы такая:

date1
time1
name1
stat1
opis1
date2
time2
name2
stat2
opis2

проверяем только параметр date
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 21:27.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter