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

Delphi Sources



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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 20.06.2010, 02:02
Hack_ERR++ Hack_ERR++ вне форума
Прохожий
 
Регистрация: 20.06.2010
Сообщения: 17
Репутация: 10
По умолчанию Удалить строку из файла

Доброго времени суток. Пишу для себя небольшой чекер. Суть его работы: из файла akks.txt прога берет строку с логином и паролем, отправляет запрос на сервер - если пароль верный, то сохраняет в файл good.txt, иначе - bad.txt. Никак не могу сделать так, чтобы после проверки очередной строки программа удаляла ее, т.е чтобы файл source очищался в процессе работы. (на случай лагов с интернетом - чтобы заново не запускать)

Код:
begin
post:=tstringlist.Create;
reset(f1);
while not EOF(f1) do
  begin
  form1.edit2.text:=inttostr(i);
  form1.edit3.Text:=inttostr(k);
  readln(f1,s);
  login:=copy(s,1,pos(';',s)-1);
  pass:=copy(s,pos(';',s)+1,length(s)-length(login)+1);
  post.add('username='+login);
  post.add('password='+pass);
  d:=form1.IdHTTP1.post('http://сайт', post);
  b:=pos('<title>',d);
  c:=pos('</title>',d);
  g:=copy(d,b+7,c-b-7);
  if g='условие проверки' then
    begin
    append(f2);
    writeln(f2,login+';'+pass);
    i:=i+1;
    close(f2);
    end
       else
    begin
    append(f3);
    writeln(f3,login+';'+pass);
    k:=k+1;
    close(f3);
    end;
  with tstringlist.create do
  begin
  loadfromfile('temp_source.txt');
  delete(0);
  savetofile('temp_source.txt');
  free
  end;
  end;
close(f1);
end;


Получилось только так - через дополнительный файл. Подскажите плиз, как обойтись без него?
Ответить с цитированием
  #2  
Старый 20.06.2010, 05:45
Аватар для Kailon
Kailon Kailon вне форума
Активный
 
Регистрация: 06.06.2010
Сообщения: 340
Версия Delphi: 11.3
Репутация: 429
По умолчанию

А не проще воспользоваться Ini-файлом...
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
 Ini: TIniFile;
begin
 Ini := TIniFile.Create('C:\MyIni.ini');
 Ini.DeleteKey('Login','Log1');
 Ini.DeleteKey('Password','Pass1');
end;
пример содержания файла
Код:
[Login]
Log1=Login_1
Log2=Login_2
[Password]
Pass1=Password_1
Pass2=Password_2
результат после операции
Код:
[Login]
Log2=Login_2
[Password]
Pass2=Password_2
__________________
Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете.
Ответить с цитированием
  #3  
Старый 20.06.2010, 12:43
Hack_ERR++ Hack_ERR++ вне форума
Прохожий
 
Регистрация: 20.06.2010
Сообщения: 17
Репутация: 10
По умолчанию

Аккаунты сожержатся в файле в формате логин;пароль. Так что не вижу, чтобы было проще)
Ответить с цитированием
  #4  
Старый 20.06.2010, 13:00
Аватар для Kailon
Kailon Kailon вне форума
Активный
 
Регистрация: 06.06.2010
Сообщения: 340
Версия Delphi: 11.3
Репутация: 429
По умолчанию

Неужели так сложно пользоваться гуглом?
Код:
procedure DeleteLineFromFile(FileName:string;LineNumber:integer);
var F:TStringList;
begin
 F:=TStringList.Create;
 F.LoadFromFile(FileName);
 F.Delete(LineNumber);
 F.SaveToFile(FileName);
 F.Free;
end;
нашел за 4 минуты
__________________
Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете.
Ответить с цитированием
  #5  
Старый 20.06.2010, 13:09
Hack_ERR++ Hack_ERR++ вне форума
Прохожий
 
Регистрация: 20.06.2010
Сообщения: 17
Репутация: 10
По умолчанию

Если посмотреть в мой код, то там именно так и сделано. Просто если включить этот код с основным файлом source, то программа работает неверно (не работает цикл, не удаляет строчки)
Ответить с цитированием
Ответ


Delphi Sources

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

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

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

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


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


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

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

ВКонтакте   Facebook   Twitter