Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Ascii in String Convertieren (https://www.delphipraxis.net/100438-ascii-string-convertieren.html)

ghubinger 28. Sep 2007 08:46


Ascii in String Convertieren
 
Hallo erst mal.

Ich brauche mal wieder eure Hilfe da ich keinen Plan habe wie Ich
Asccii Strings in Delphi Strings umwandeln kann.

in VB hat das mal so ausgeschaut


Delphi-Quellcode:
 Varialbe = StrConv(string, vbunicode)
Kann mir wer helfen wie ich mit delphi hinkriege.
Danke im vorraus für die Hilfe

LG Ghubinger

s-off 28. Sep 2007 08:49

Re: Ascii in String Convertieren
 
Moin,

Zeichen für Zeichen mit Chr() übersetzen

Edit
Ein Beispiel sähe so aus (nicht schön, zeigt aber, wie es geht - die Funktionen zur Ermittlung der Token lassen sich sicherlich schöner gestalten - auch wurde kein Exceptionhandling berücksichtigt!):
Delphi-Quellcode:
Function AsciiToChar(_sValue: String; _cDelimiter: Char): String;
Var
   i: Integer;

   Function ParseString(_cDelimiter: Char; _sString: String; _iCount: Integer): Integer;
   Var
      i: Integer;
      sErgebnis: String;
   Begin
      Result := 0;
      If Length(_sString) > 0 Then Begin
         If _sString[Length(_sString)] <> _cDelimiter Then Begin
            _sString := _sString + _cDelimiter;
         End;
         For i := 1 To _iCount Do Begin
            sErgebnis := Copy(_sString, 0, Pos(LowerCase(_cDelimiter), LowerCase(_sString)) - 1);
            _sString := Copy(_sString, Pos(LowerCase(_cDelimiter), LowerCase(_sString)) + 1, Length(_sString));
         End;
         Result := StrToInt(sErgebnis);
      End;
   End;

   Function CountDelimiters(Const _cDelimiter: Char; Const _sString: String): Integer;
   Var
      i: Integer;
   Begin
      Result := 0;
      For i := 1 To Length(_sString) Do Begin
         If _sString[i] = _cDelimiter Then Begin
            Inc(Result);
         End;
      End;
   End;

Begin
   Result := '';
   For i := 1 To CountDelimiters(_cDelimiter, _sValue) + 1 Do Begin
      Result := Result + Chr(ParseString(_cDelimiter, _sValue, i));
   End;
End;
Aufruf mit:
Delphi-Quellcode:
Procedure TForm1.Button1Click(Sender: TObject);
Const
   sASCII: String = '72,97,108,108,111';
Begin
   ShowMessage(AsciiToChar(sASCII, ','));
End;

peschai 28. Sep 2007 08:52

Re: Ascii in String Convertieren
 
Hallo
Bin mir nicht sicher ob ich deion Problem verstehe ...
Eigentlich einfach einer Stringvariablen zuweisen
Delphi-Quellcode:
sMyString:='Hallo'
..oder wolltest du anstelle ASCII-strings eventuell Unicode-Strings ... ?


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:09 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