AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi StringList nach bestimmten Inhalt durchsuchen und ausgeben
Thema durchsuchen
Ansicht
Themen-Optionen

StringList nach bestimmten Inhalt durchsuchen und ausgeben

Ein Thema von Drome · begonnen am 2. Mär 2008 · letzter Beitrag vom 3. Mär 2008
Antwort Antwort
Seite 1 von 2  1 2      
Drome

Registriert seit: 2. Nov 2007
16 Beiträge
 
#1

StringList nach bestimmten Inhalt durchsuchen und ausgeben

  Alt 2. Mär 2008, 19:39
Also, mein Problem ist, ich möchte eine Datei in eine StringList laden, und sie Dann nach 2 bestimmten Stichworten durchsuchen, und alles was zwischen diesen Stichworten steht in einem Edit Feld ausgeben.

  • Hallo
    Holla
    Hihoo Lala Musik Sonne 164614543 456asf fgd3f4asfd4a3fdff
    Fussel fdf5sdgfa4fg5d4h5s4hg65fgh
    Staubsauger s4dfs35fg43g54df356g4sd564gh
    Sonne s3df4s65df4s35d4f35sd4gf3d5s4fg56d34fg5sd4d6f5g435 dfg4as3d4fs
    Bild DSa35fr4 F664L644Ö6LÖ4AF8KLAM43ÖLS634AF46KJ6445
    Vase
    Regal

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);

var
s: string;

begin
StringList := TStringList.Create;
StringList.LoadFromFile('C:\Textfile.txt');

//* hier komme ich nicht weiter und habe auch noch keine Lösung gefunden, weder hier im Forum noch wo anders. Ich möchte die StringList nach dem Worte Hihoo durchsuchen und wenn es gefunden wurde alles was z.B. 90 stellen hinter dem Wort steht in dem Editfeld1 ausgeben. *//

Edit4.Text := s;
end;
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#2

Re: StringList nach bestimmten Inhalt durchsuchen und ausgeb

  Alt 2. Mär 2008, 19:41
Was Du suchst, ist Pos.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: StringList nach bestimmten Inhalt durchsuchen und ausgeb

  Alt 2. Mär 2008, 19:43
... und copy

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#4

Re: StringList nach bestimmten Inhalt durchsuchen und ausgeb

  Alt 2. Mär 2008, 19:47
Jepp, als 2. Schritt
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: StringList nach bestimmten Inhalt durchsuchen und ausgeb

  Alt 2. Mär 2008, 19:49
Vielleicht so...

Delphi-Quellcode:
procedure TForm.ButtonClick(Sender: TObject);
var StringList:TStringList;
    posi:integer;
    s:string;
begin
  StringList := TStringList.Create;
  try
    StringList.LoadFromFile('C:\Textfile.txt');
    s:=StringList.Text;
    delete(s, 1, pos('<Startwort>', s) + length('<Startwort>') - 1);
    Edit4.Text := copy(s, 1, pos('<Endewort>', s) - 1);
  finally
    StringList.free;
  end;
end;
Gruss
Thorsten
  Mit Zitat antworten Zitat
Drome

Registriert seit: 2. Nov 2007
16 Beiträge
 
#6

Re: StringList nach bestimmten Inhalt durchsuchen und ausgeb

  Alt 2. Mär 2008, 20:18
Ok, das Problem wäre gelöst, doch jetzt kommt hier ein neues:

Die Datei enthält solche Zeichen und Zahlen:

”¥—ÐmU»Mêò¯¶è»{óo4ùÙ
cR†f–Õ®žïI—+;7À¤åé5ÞÅfâ"«Í±«ò…u¯šEéê‡TNõ}ÛrJ öõ§)<Á,.)VëÒÛ Üíº+#Î`T¤¾H~~AgZ¯FJ¼àcZx¤ƒ®CM «úÔdjaö¿5»îcc¦±|Ñ4>Íp; úOb·Rq{³óU¹íá¿ÇγBz½ç/E¬ù^ÄûÖ/¬nXï3µw:î´öài"9¡AXÆy°2\T1Lüô|@@CÒ\ÚÅó'ñ )¯!TÇ ¥
#ΰaÑzn±éXJØXžm›ÏAõþ*¨ ½ÐÄòÃw^5ÈQòˆ$¨®£<êåTƤêýgŒ!…ˆ€m@œô0iEŸ—¡ÍÛ xÜË×÷
l¢s”ªÍkš.ac¿Q,ø\“Gë!¬jÂ&Ÿ ß^XÍtÏ*/{„ÈÃE}ÂëÍî9¡ŽMZ—XXA‰!fi)zïx¡d|¾¾ëežµÖ¢ÄÈÊJ‰n›åð» Ò]ËHq‹› 5øDr†.añ GÀ×t˜´ÀÀ·€Ô…ÿaç¢ûF€—«»ØšJ)rVSH™Í S3œõV?Ÿ½,¨Äz`ºæ{Û

was mache ich jetzt, ich suche aber in dieser Datei eben eine Stelle, die auch aus Großbuchstaben, Kleinebuchstaben und Zahlen besteht. Kann mir da einer Helfen?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: StringList nach bestimmten Inhalt durchsuchen und ausgeb

  Alt 2. Mär 2008, 20:20
Es scheint sich um eine Binär- oder Unicode-Datei zu handeln
Markus Kinzler
  Mit Zitat antworten Zitat
Drome

Registriert seit: 2. Nov 2007
16 Beiträge
 
#8

Re: StringList nach bestimmten Inhalt durchsuchen und ausgeb

  Alt 2. Mär 2008, 22:16
Kann sein, ich weiß es aber nicht, gibt es eine Möglickeit, dort einen bestimmten Inhalt der aus Großbuchstaben und Zahlen besteht auszulesen, und in ein Editfeld zu schreiben?
  Mit Zitat antworten Zitat
Drome

Registriert seit: 2. Nov 2007
16 Beiträge
 
#9

Re: StringList nach bestimmten Inhalt durchsuchen und ausgeb

  Alt 3. Mär 2008, 14:29
OK, mit der oben genannten Lösung klappt es auf C:, aber irgendwie will er keine Dateien von meiner Festplatte D: in die StringList laden.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
slist: TStringList;
s: String;
begin
slist := TStringList.Create;
slist.LoadFromFile('D:\Test.txt');
s:=slist.Text;
delete(s, 1, pos('Hihoo', s) + length('Hihoo') - 1);
    Edit1.Text := copy(s, 1, pos('Vase', s) - 1);
slist.SaveToFile('D:\result.txt.txt');
slist.Free;
end;
Was mache ich falsch? ( Die Textdatei result.txt und das Editfeld 1 bleiben leer )
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#10

Re: StringList nach bestimmten Inhalt durchsuchen und ausgeb

  Alt 3. Mär 2008, 14:44
Um binäre Daten zu laden, ist folgende Funktion sehr nützlich:
Delphi-Quellcode:
function FileToString(const FileName: string): AnsiString; // aus der JCL
var
  fs: TFileStream;
  Len: Integer;
begin
  fs := TFileStream.Create(FileName, fmOpenRead or fmShareDenyWrite);
  try
    Len := fs.Size;
    SetLength(Result, Len);
    if Len > 0 then
      fs.ReadBuffer(Result[1], Len);
  finally
    fs.Free;
  end;
end;
Wenn man eine Stringlist verwendet, können die Daten verfälscht werden, das CR/LF und CR als Zeilenumbruch interpretiert werden.

Und dann so:
Delphi-Quellcode:
var
  s: string;
  idx : integer;
begin
  s := FileToString('C:\Textfile.txt'); // binär-Datei auf String einlesen
  idx := Pos('Hihoo', s);
  // hier weitere Stringverarbeitung ...
end;
Andreas
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:51 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