![]() |
ReadLn-Funktion
Hallo Leute, ich bräuchte einfach nur mal einen anstoß, wie ich eine ReadLn funktion umstenz könnte, das verfahren in den Indy-Komponenten verstehe ich nicht, deshalb bitte vllt kann mir das einer erklären.
Ich habe nämlich absolut keine vorstellung wie ich sowas umsetzen könnte. |
Re: ReadLn-Funktion
Von wo willst du denn lesen?
|
Re: ReadLn-Funktion
oh sorry habe ich total vergessen...
also er geht um die winsockets, also aus einem socket |
Re: ReadLn-Funktion
Weißt du schon, wie du z.B. ein Byte liest?
|
Re: ReadLn-Funktion
-.- ja
man ich kann auch schon 5 bytes und 2 integer einlesen ... Also ich brauche kein code sondern nur einen tipp wie ich es umsetzen kann. So weit habe ich gedacht : Ich lese immer ein bestimmtes stück ein wenn darin ein umbruch vorkommt, hacke ich dahinter alles ab, ansonsten lese ich noch mehr ein hänge es an und suche wieder nach dem umbruch |
Re: ReadLn-Funktion
Naja, ich würde es so machen:
Delphi-Quellcode:
Das ganze funktioniert so: Du liest in den String, bis du auf ein Zeilenumbruchszeichen (#10 oder #13) triffst. Dann, am Ende, schaust du noch, ob danach noch ein #10 kommt, wenn davor ein #13 war, weil unter Windows ein Zeilenumbruch immer #13#10 ist, unter Unix aber #10 und unter Mac OS <X #13 ist.
repeat
b:=ReadByte; if b in [10, 13] then str:=str+chr(b) else break; until (Stream zu Ende); if b=13 then begin b:=ReadByte; if b<>10 then (Gehe ein Byte zurück); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:35 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz