AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

String zerlegen

Ein Thema von smepal · begonnen am 28. Dez 2005 · letzter Beitrag vom 29. Dez 2005
Antwort Antwort
Benutzerbild von smepal
smepal

Registriert seit: 25. Okt 2005
Ort: Bechen
58 Beiträge
 
Delphi 2005 Personal
 
#1

String zerlegen

  Alt 28. Dez 2005, 21:57
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???
Martin Krämer
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#2

Re: String zerlegen

  Alt 28. Dez 2005, 22:22
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
  Mit Zitat antworten Zitat
Benutzerbild von smepal
smepal

Registriert seit: 25. Okt 2005
Ort: Bechen
58 Beiträge
 
Delphi 2005 Personal
 
#3

Re: String zerlegen

  Alt 29. Dez 2005, 10:44
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
Martin Krämer
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz