![]() |
AW: ANSISTRING unter Linux verfügbar ???
das
Delphi-Quellcode:
ist doch eh überflüssig. Wenn dann müßte es ein
sizeof(ansichar)
Delphi-Quellcode:
sein, da der 8- oder 16-bittig sein kann. Daß dann der
sizeof(char)
Delphi-Quellcode:
definiert sein muß, sollte klar sein.
Savestring:String
Gruß K-H |
AW: ANSISTRING unter Linux verfügbar ???
Ja, ein SizeOf auf einen "festen" Typen, der sich eh niemals ändert und der auch noch 1 ist. das ist schon bissl sinnlos.
Zitat:
Sowas macht man niemals, ohne beim Lesen nicht alle möglichen Formate zu implementieren und bei Speichern auch das Format mit zu speichern, damit man beim Lesen weiß wie es gelesen werden muß. Gut, man kann beim Lesen nur Einwas implementieren, aber muß dann einen Fehler werfen, wenn ein unbekanntes/falsche Format kommt. |
AW: ANSISTRING unter Linux verfügbar ???
was entspricht dann PAnsiChar , wenn ich AnsiChar durch TBytes ersetze ?
Code beispiel
Delphi-Quellcode:
type TReadBuffer = record BufferBytes: array of Byte; procedure clear; end; function BytestoString(BytesBuffer: TReadBuffer): AnsiString; var arraylength: integer; s: AnsiString; begin arraylength := high(BytesBuffer.BufferBytes) + 1; SetString(s, PAnsiChar(@BytesBuffer.BufferBytes[0]), arraylength); Result := s; end; |
AW: ANSISTRING unter Linux verfügbar ???
Wo möchtest du dort jetzt etwas ersetzen? AnsiString durch TBytes? Meinst du das?
Delphi-Quellcode:
type
TReadBuffer = record BufferBytes: array of Byte; class operator implicit(const ABuffer: TReadBuffer): TBytes; procedure Clear; end; class operator TReadBuffer.implicit(const ABuffer: TReadBuffer): TBytes; begin SetLength(Result, Length(ABuffer.BufferBytes)); CopyMemory(@Result[0], @ABuffer.BufferBytes[0], Length(ABuffer.BufferBytes)); end; var TestBuffer: TReadBuffer; TestBytes: TBytes; begin TestBuffer.BufferBytes := [1,4,5]; TestBytes := TestBuffer; ShowMessage(Format('%d: [%d, %d, %d]', [Length(TestBytes), TestBytes[0], TestBytes[1], TestBytes[2]])); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:48 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 by Thomas Breitkreuz