BlitzBasic - News System! [#ERLEDIGT#]

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

maxihabbo

Betreff: BlitzBasic - News System! [#ERLEDIGT#]

BeitragMi, Aug 17, 2005 12:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo!
Ich habe mit BlitzBasic angefangen, ein News-System zu erstellen. Hier der Code zum auslesen:
BlitzBasic: [AUSKLAPPEN]
tcp=OpenTCPStream(\"http://maxi.klammhost.de\",80)
If tcp = 0 Then
window=CreateWindow(\" E R R O R\", 230,250,320,50,0,17)
label=CreateLabel(\"Die Verbindung zur Datenbank konnte nicht hergestellt werden!\",5,5,380,230,window)
Repeat
If WaitEvent()=$803 Then End
Forever
EndIf

WriteLine(tcp, \"GET http://maxi.klammhost.de/news.txt HTML/2.0\")
WriteLine(tcp, \"HOST http://maxi.klammhost.de\")
WriteLine(tcp, \"\")

While Not Eof(tcp)
name$=ReadLine(tcp)
datum$=ReadLine(tcp)
news$=ReadLine(tcp)
Wend


Das Problem ist, dass es mehrere Beiträge sind, und die News manchmal auch länger als 1Zeile sind. Wie kann man dennoch alles passend auslesen?

Gruß maxi

PS: Hier die News:
http://maxi.klammhost.de/news.txt Laughing
  • Zuletzt bearbeitet von maxihabbo am Mi, Aug 17, 2005 21:21, insgesamt einmal bearbeitet

hectic

Sieger des IS Talentwettbewerb 2006

BeitragMi, Aug 17, 2005 14:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Kannst du nicht die Datei öffnen und die Zeilen per Readline auslesen bis EOF erreicht wurde?
 

maxihabbo

BeitragMi, Aug 17, 2005 15:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Das macht doch das script.
nur irgendwie geht das nicht...

hectic

Sieger des IS Talentwettbewerb 2006

BeitragMi, Aug 17, 2005 15:59
Antworten mit Zitat
Benutzer-Profile anzeigen
ReadLine liest die Textzeilen einer Datei nacheinander aus. Somit müßen auch nacheinander die Zeilen in unterschiedliche Variablen eingelesen werden. In deinem Beispiel werden die Variablen immer wieder überschrieben, bis die Datei zu Ende ist. Die Variablen geben dann nur noch die letzten drei Zeilen des Streams wieder.
 

maxihabbo

BeitragMi, Aug 17, 2005 17:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Kannst du das mal an einem Beispiel zeigen?

hectic

Sieger des IS Talentwettbewerb 2006

BeitragMi, Aug 17, 2005 18:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo maxihabbo, hier ein Beispiel wie man es machen könnte.

Code: [AUSKLAPPEN]
file = ReadFile("news.txt")

While Not Eof(file)
 Print "NAME>> "+ReadLine$(file)
 Print "DATE>> "+ReadLine$(file)

 news$=""
 Repeat
  back$=ReadLine$(file)
  news=news+back
 Until Right$(back,1)=""

 Print "NEWS>> "+news
Wend

FlushKeys
WaitKey
End

Dabei muß beachtet werden, daß dieser Beispielcode nur funktioniert wenn die Formatierung des Quelltextes fort an immer gleich bleibt! Das bedeutet, daß zwei Absätz hintereinander einen Fehler bei der Ausgabe produzieren würden. Jetzt selektiert das Programm Name, Datum und News aus. Die News werden in die Variable news$ zusammengefasst bis ein Absatz (back$="") kommt. In einem richtigem Programm sollten natürlich Abfragen dabei sein, die Fehleingaben der Quelltextformatierung abgleichen.
 

maxihabbo

BeitragMi, Aug 17, 2005 21:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Naja gut, darauf wäre ich nicht gekommen.
Funktioniert aber gut, danke!

Gruß maxi

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group