![]() |
String zerlegen
habe folgendes Problem:
Ich habe ein Server und ein Clientsocket, welche sic Infos hin und her schicken. Dabei müssen mehrere Infos in Form von Ziffern auf ein mal also in eine clientsocket.sendtext verpackt werden. Das is ja kein Problem, aber wie kann ich den server den String wieder in die einzelnen Ziffern zerlegen lassen??? |
Re: String zerlegen
HI,
wenn du dass alles als String verschickst, kannst du entweder Trennzeichen einfügen und dann (z.B. durch eine TStringList) zerlegen. Wenn du immer genau eine Ziffer möchtest, kannst du auf die einzelnen Chars eines Strings auch per Index (achtung bei 1 beginnend) zugreifen. Dann musst du nur den Wert - 48 nehmen und hast die Ziffer
Delphi-Quellcode:
Das sollte reichen
var s : String;
i : Integer; digits : Array of Integer; begin setLength(digits, length(s)); for i := 1 to length(s) do begin digits[i] := ord(s[i]) - 48; end; end; Gruß Der Unwissende |
Re: String zerlegen
Funktioniert wunderbar habe aber noch eine andere Möglichkeit gefunden:
Delphi-Quellcode:
Trotzdem VIELEN DANK
function Parse(Char, S: string; Count: Integer): string;
var I: Integer; T: string; begin if S[Length(S)] <> Char then S := S + Char; for I := 1 to Count do begin T := Copy(S, 0, Pos(Char, S) - 1); S := Copy(S, Pos(Char, S) + 1, Length(S)); end; Result := T; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:32 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