AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

String in Textdatei suchen

Ein Thema von oldi · begonnen am 13. Jan 2003 · letzter Beitrag vom 17. Jan 2003
Antwort Antwort
oldi

Registriert seit: 13. Jan 2003
5 Beiträge
 
#1

String in Textdatei suchen

  Alt 13. Jan 2003, 21:24
Hi .. hab da ein Problem !

Ich muss für ein Programm einen Währungskurs aus dem Internet abfragen. Dies möchte ich folgendermaßen lösen :

- Das Programm läd eine Internetseite im html format herunter das den Kurs als String irgendwo enthält (HTML Code) und speichert diese als body.txt (soweit hab ich das auch schon )

- Das Programm sucht nun einen bestimmten String "A" in body.txt, der vor der eigentlichen Zahl, dem Währungskurs steht.

- Das Programm nimmt nun die 7 nächsten Zeichen hinter dem String "A" ( zB. 1,0000 .. mein Kurs) und ordnet sie der Variable "B" als String zu.


Kann mir jemand bei Punkt 2 und 3 helfen ?
Vielen Danke
Gruß
oldi
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#2
  Alt 13. Jan 2003, 22:08
Moin oldi,

erst einmal herzlich willkommen.

Für die Suche nach einem String könntest Du pos benutzen, für das herauskopieren eines bestimmten Teiles copy.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#3
  Alt 13. Jan 2003, 22:31
Na ja. Auf den Websiten, die ich nutze, kommt der String 'A' doch häufiger vor. Da muss man wohl noch zusätzliche Kriterien einbauen. ZB, dass Vorher schon einmal ein anderer String gekommen sein muss, und man dann das nächste 'A' verwendet...
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat
oldi

Registriert seit: 13. Jan 2003
5 Beiträge
 
#4
  Alt 13. Jan 2003, 22:57
Wenn das Wort "Dollar" in dem String vorkommt wird es doch ziemlich eindeutig für meinen Bedarf.
Allerdings hab ich noch ein anderes Prob. Die HTML Datei kann ich net als kompletten String verwenden, weil die zu lang ist. Wie kann man die zerlegen ?
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#5
  Alt 13. Jan 2003, 23:03
Moin oldi,

ein String darf theoretisch bis zu 2GB belegen.
Das dürfte doch genügen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
oldi

Registriert seit: 13. Jan 2003
5 Beiträge
 
#6
  Alt 14. Jan 2003, 20:00
irgendwie funktioniert meine copy anweisung net... bekomm nen fehler : 'nicht genügend wirkliche parameter' was mach ich falsch ? Hier der code :

Delphi-Quellcode:
var
  Form1: TForm1;
  File1: Textfile;
  verz: String;
  String1: String;
  position1: Integer;
  laengestring1: Integer;
  startkurs: Integer;
  kurs: real;
  laengekurs: Integer;
  gesstring: string;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin

// NMHTTP1.Get('http://www.waehrungskurs.de/all_currencies.php');

    startkurs:=1;
    laengekurs:=1;
    
    
     gesstring:=edit1.text;
     laengekurs:=strtoint(edit2.text);


    GetDir(0,verz);
    AssignFile(File1, 'body.txt');
    Reset(File1);
  while (not EoF(File1)) do
  begin
    Readln(File1,String1);
    Memo1.Lines.Add(String1);
    position1:=Pos(gesstring, String1);
    laengestring1:=Length(gesstring);
    startkurs:=laengestring1+position1+1;
    kurs:=strtofloat(copy(String1[startkurs], laengekurs));

  end;


end;
danke,
gruß björn
  Mit Zitat antworten Zitat
oldi

Registriert seit: 13. Jan 2003
5 Beiträge
 
#7
  Alt 14. Jan 2003, 20:06
kurs:=strtofloat(copy(String1, startkurs, laengekurs)); so geht.. stimmt das aber auch ?
  Mit Zitat antworten Zitat
oldi

Registriert seit: 13. Jan 2003
5 Beiträge
 
#8
  Alt 14. Jan 2003, 20:34
hm.. das geht.. aber scheinbar stimmt was mit der pos funktion net... der findet den substring bei mir net und gibt immer 0 zurück
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#9
  Alt 17. Jan 2003, 23:03
Moin Björn,

da ich aus Deinem Code nicht so recht schlau geworden bin:

Hast Du berücksichtigt, dass der Substring der erste und der zu durchsuchende String der zweite Parameter ist?
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Antwort Antwort


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 18:12 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