System.Classes.LineStart

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

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.