System.Classes.LineStart
Delphi
function LineStart(const Buffer: TBytes; BufPos: NativeInt): NativeInt;
function LineStart(Buffer, BufPos: PAnsiChar): PAnsiChar;
function LineStart(Buffer, BufPos: PChar): PChar;
C++
extern DELPHI_PACKAGE NativeInt __fastcall LineStart(const System::DynamicArray<System::Byte> Buffer, NativeInt BufPos)/* overload */;
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
function | public | System.Classes.pas System.Classes.hpp |
System.Classes | System.Classes |
Beschreibung
Sucht das Ende der letzten ganzen Zeile in einem Puffer.
Mit LineStart kann der Anfang der letzten, nicht vollständigen Zeile in einem Puffer gefunden werden. LineStart beginnt an der Position BufPos und sucht rückwärts nach einem Zeilenwechselzeichen (\n). Dann wird ein Zeiger auf das Zeichen zurückgegeben. Wenn kein Zeilenwechsel gefunden wird, gibt die Funktion den Zeiger Buffer zurück. Buffer muss auf den Beginn eines Speicherblocks verweisen und BufPos auf das Ende des Speicherblocks, der durchsucht werden soll.
Anmerkung: Die undokumentierte Klasse TParser verwendet LineStart zur Lokalisierung von Zeilenwechseln in Textblöcken, die in einen Puffer mit fester Größe gelesen werden. Sobald die letzte vollständige Textzeile extrahiert ist, verlagert der Parser die letzte unvollständige Zeile vom Ende des Puffers an den Anfang und füllt den Rest des Puffers mit den neuen Daten von der Festplatte.