Entwickler-Ecke

Sonstiges (Delphi) - Twebbrowser txt in Memo?


0x33 - Sa 21.03.09 15:04
Titel: Twebbrowser txt in Memo?
hi, also ich navigierem it twebbrowser zu einer txt file z.B. 'http://xxx.de/text.txt'

wie kann ich mir den inhalt davon jetzt in einem memo ausgeben lassen? danke :)


jaenicke - Sa 21.03.09 15:21

Wenn es einfach nur eine Textdatei ist und du den TWebBrowser gar nicht anzeigst, dann nimm doch einfach TIdHttp. Was willst du da mit dem TWebBrowser? :shock:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
MyIdHttp := TIdHttp.Create;
try
  Memo1.Text := MyIdHttp.Get('Adresse');
finally
  MyIdHttp.Free;
end;


0x33 - Sa 21.03.09 15:46

oook, danke, funzt schonmal teilweilse :)

jetzt gibts noch andere probleme^^ 1. ich bekomme ne fehlermeldung (text wird allerdings trotzdem im memo angezeigt oO

und 2. in meiner txt datei werden die returns nicht berücksichtigt / die absätze nicht wie krieg ich das hin? muss da hinter jeder zeile ein bestimmter befehl stehen? =)


MDX - Sa 21.03.09 15:58

Mit der Aussage:
user profile icon0x33 hat folgendes geschrieben:
jetzt gibts noch andere probleme^^ 1. ich bekomme ne fehlermeldung (text wird allerdings trotzdem im memo angezeigt oO


können wir dir nicht helfen...

Du solltest zumindest schreiben welche Fehlermeldung du bekommst, oder ein Screenshot posten.
Dann kann man dir vllt. auch helfen :wink:


jaenicke - Sa 21.03.09 16:05

user profile icon0x33 hat folgendes geschrieben Zum zitierten Posting springen:
und 2. in meiner txt datei werden die returns nicht berücksichtigt / die absätze nicht wie krieg ich das hin? muss da hinter jeder zeile ein bestimmter befehl stehen? =)
Ich vermute einmal dann stehen in der Textdatei Linuxzeilenumbrüche statt die von Windows. Unter Windows muss da das Zeichen 13 und das Zeichen 10 stehen, unter Linux nur 10.

Du könntest das also in der Datei auf dem Server oder nach dem Download ändern.

Delphi-Quelltext
1:
Memo1.Text := StringReplace(MyIdHttp.Get('Adresse'), #10#13#10, [rfReplaceAll]);                    
So sollte das klappen.


0x33 - Sa 21.03.09 16:05

hier hab ich kurz en vid gemacht in der der die fehlermeldung dann erscheint:

http://www.file-upload.net/download-1541536/clip0021.rar.html

und dann halt noch das prob mit den absätzen, wie löse ich das? hinter jede zeile in (/br) oder irgendwie sowas?

edit: funzt so leider nicht oO
Form1.Memo1.Text := (Form1.IdHttp1.Get('http://url.de/chat/chatl.txt'), #10, #13#10, [rfReplaceAll]);

[DCC Fehler] Unit2.pas(113): E2029 ')' erwartet, aber ',' gefunden
[DCC Fehler] Unit2.pas(117): E2029 '.' erwartet, aber ';' gefunden
[DCC Fataler Fehler] Project2.dpr(6): F2063 Verwendete Unit 'Unit2.pas' kann nicht compiliert werden


Yogu - Sa 21.03.09 16:11

user profile icon0x33 hat folgendes geschrieben Zum zitierten Posting springen:
und 2. in meiner txt datei werden die returns nicht berücksichtigt / die absätze nicht wie krieg ich das hin? muss da hinter jeder zeile ein bestimmter befehl stehen? =)

Ich schätze mal, da stehen nur Linefeeds drin, und keine CRs, da die Datei unter Linux erstellt wurde. Ersetze mal mit StringReplace #10 in #13#10 (oder spiel etwas mit den Werten herum).

Edit: Bitte häng deinen Screenshot als Anhang an, und unkomprimiert (ich habe jetzt keine Lust, ein RAR-Archiv zu entpacken :roll:)


MDX - Sa 21.03.09 16:17


Delphi-Quelltext
1:
Form1.Memo1.Text := (Form1.IdHttp1.Get('http://url.de/chat/chatl.txt'), #10#13#10, [rfReplaceAll]);                    


ist auch keine Funktion...


Delphi-Quelltext
1:
Form1.Memo1.Text := stringreplace(Form1.IdHttp1.Get('http://url.de/chat/chatl.txt'), #10#13#10, [rfReplaceAll]);                    


Dann sollte es gehen...

Kann aber auch an den Schriftzeichen liegen..

Welche Website ist es denn überhaupt?


jaenicke - Sa 21.03.09 16:17

user profile iconYogu hat folgendes geschrieben Zum zitierten Posting springen:
Edit: Bitte häng deinen Screenshot als Anhang an, und unkomprimiert (ich habe jetzt keine Lust, ein RAR-Archiv zu entpacken :roll:)
Das ist ein Video und unkomprimiert über 6 MiB groß... :roll:

Anhängen wäre aber trotzdem sinnvoller als es irgendwo hochzuladen.

user profile icon0x33 hat folgendes geschrieben Zum zitierten Posting springen:
edit: funzt so leider nicht oO
Form1.Memo1.Text := (Form1.IdHttp1.Get('http://url.de/chat/chatl.txt'), #10, #13#10, [rfReplaceAll]);
Du kannst nicht mal kopieren...
Du hast das StringReplace weggelassen, wie soll das ohne Funktion denn auch noch klappen? :shock:


MDX - Sa 21.03.09 16:18

user profile iconjaenicke: Ich war schneller xD


jaenicke - Sa 21.03.09 16:21

Dabei fällt mir wegen dem Fehler im Video auf:
Kann es sein, dass du das IdHttp1.Free; drin hast obwohl du die Komponente auf das Formular gelegt hast?
Wofür eigentlich das Form1. vor dem IdHttp1? Wenn das nötig ist, dann läuft da was schief.

Was passiert denn beim zeilenweisen Debuggen mit Haltepunkt? Wo tritt der Fehler denn auf?


0x33 - Sa 21.03.09 16:51

user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Dabei fällt mir wegen dem Fehler im Video auf:
Kann es sein, dass du das IdHttp1.Free; drin hast obwohl du die Komponente auf das Formular gelegt hast?
Wofür eigentlich das Form1. vor dem IdHttp1? Wenn das nötig ist, dann läuft da was schief.

Was passiert denn beim zeilenweisen Debuggen mit Haltepunkt? Wo tritt der Fehler denn auf?


danke dir, gut aufgepasst, da war der fehler hehe =)
jetzt noch eins, wie spring ich beim memo immer ans ende? ;)


jaenicke - Sa 21.03.09 16:56

Du kannst z.B. SelStart benutzen, ich denke das klappt:

Delphi-Quelltext
1:
Memo1.SelStart := Length(Memo1.Text);                    


MDX - Sa 21.03.09 17:03

Eigentlich für jede Frage nen andereren Thread :mahn:

:wink:


0x33 - Sa 21.03.09 17:07

xD, is doch eig. alles das gleiche :)
naja das mit dem runterscrollen funzt nicht^^
scrollbar darf ruhig angesprochen werden :) aber will nicht richtig^^
auf jedenfall immer max vom scrollbar runterscrollen?