Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi String zerlegen (https://www.delphipraxis.net/59804-string-zerlegen.html)

smepal 28. Dez 2005 21:57


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???

Der_Unwissende 28. Dez 2005 22:22

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:
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;
Das sollte reichen

Gruß Der Unwissende

smepal 29. Dez 2005 10:44

Re: String zerlegen
 
Funktioniert wunderbar habe aber noch eine andere Möglichkeit gefunden:
Delphi-Quellcode:
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;
Trotzdem VIELEN DANK


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