Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi TXT Datei auf String durchsuchen (https://www.delphipraxis.net/111686-txt-datei-auf-string-durchsuchen.html)

SaFu 7. Apr 2008 21:31


TXT Datei auf String durchsuchen
 
Hi

Hab jetzt eine lösung um eine txt Datei auf einen String zu durchsuchen aber irgenwie bekomme ich nie ein Ergebnis woran liegt das

Delphi-Quellcode:
procedure TForm7.Edit2KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var sGridL: TStringList;
    sSuchen :string;
begin sGridL := TStringList.Create;
 try
  if (Key = VK_Return) then
   begin
    sSuchen:= Edit2.Text;
    sGridL.LoadFromFile(Form1.ServerPfad + 'Liste\Einträge.txt');
     if pos(sSuchen, sGridL.Text) = 1 then
      begin
       ShowMessage(sSuchen + ' ist schon vorhanden');
      end
     else
      begin
       ShowMessage(sSuchen + ' Nicht vorhanden');
      end;
    end;
 finally
  sGridL.Free;
 end;
end;

s-off 7. Apr 2008 21:38

Re: TXT Datei auf String durchsuchen
 
Was erwartest Du?

Wenn der Text aus Edit2 am Anfang (Pos 1) des Inhaltes der Datei steht, dann bekommst Du 'ist vorhanden', ansonsten 'ist nicht vorhanden'.... Wo ist Dein Problem?

SaFu 7. Apr 2008 21:39

Re: TXT Datei auf String durchsuchen
 
Eigentlich hatte ich erwartet das Pos die ganze datei auf den Eingegebenen String von Edit2 durchsucht :gruebel:

s-off 7. Apr 2008 21:43

Re: TXT Datei auf String durchsuchen
 
Zitat:

Zitat von fuknersascha
Eigentlich hatte ich erwartet das Pos die ganze datei auf den Eingegebenen String von Edit2 durchsucht :gruebel:

Ja, das tut es auch, Du prüfst aber explizit auf Pos = 1
Zitat:

pos(sSuchen, sGridL.Text) = 1
...

Ach nochetwas: Pos ist case-sensitiv!

SaFu 7. Apr 2008 21:46

Re: TXT Datei auf String durchsuchen
 
Ah

Danke da ist es doch

Delphi-Quellcode:
pos(sSuchen, sGridL.Text) = 0
so gehts auch

oder doch nicht

s-off 7. Apr 2008 21:50

Re: TXT Datei auf String durchsuchen
 
Zitat:

Zitat von fuknersascha
pos(sSuchen, sGridL.Text) = 0

Das bedeutet übersetzt "Wenn der String im String nicht vorhanden ist..." - dann musst Du aber die Reaktionen darauf vertauschen, also erst 'nicht vorhanden' und dann 'vorhanden'.

Warum nicht einfach
Delphi-Quellcode:
if pos(LowerCase(sSuchen), LowerCase(sGridL.Text)) > 0 then
?!

Edit: denk doch erstmal nach und schau ggf. in der Hilfe, was die Funktion überhaupt macht.
Du kommst hier teilweise mit Klöpsen, die sich einfach mit der Hilfe beheben lassen. Dann prägst Du es Dir auch besser ein, als wenn Du Dir jedes kleine Problem vorkauen lässt.

SaFu 7. Apr 2008 21:55

Re: TXT Datei auf String durchsuchen
 
Damit hast du vollkommen Recht

das ist doch viel besser

Ich lasse es mal für heute gut sein, bin ja schon net der beste aber heute ist es echt hart :lol:

Japp hast vollkommen recht, mein Problem ist das ich mit dieser bescheuerten Hilfe von 2007 noch nicht so zurecht komme, die von D7 war viel besser.

s-off 7. Apr 2008 22:00

Re: TXT Datei auf String durchsuchen
 
Zitat:

Zitat von fuknersascha
Japp hast vollkommen recht, mein Problem ist das ich mit dieser bescheuerten Hilfe von 2007 noch nicht so zurecht komme, die von D7 war viel besser.

Dann binde Dir die D7-Hilfe parallel ein, guckst Du hier

mkinzler 7. Apr 2008 22:02

Re: TXT Datei auf String durchsuchen
 
Also die D2007-Hilfe mit dem 2. Hilfeupdate ist wieder recht gut.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:13 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz