Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi String To Byte ... (https://www.delphipraxis.net/109386-string-byte.html)

cherry 29. Feb 2008 10:52


String To Byte ...
 
Hi

Wie mache ich aus einem enzelnen Buchstaben eine Binären Wert?

zb. StrToByte('A') ergibt '00101011' ?

gibts sowas, kann man das machen?

DeddyH 29. Feb 2008 10:57

Re: String To Byte ...
 
Einen String oder ein einzelnes Zeichen?

s-off 29. Feb 2008 10:59

Re: String To Byte ...
 
Hallo,

Delphi-Quellcode:
Function ChrToBin(_Chr: Char): String;
Var
   i: Integer;
Begin
   For i := SizeOf(_Chr) * 8 - 1 Downto 0 Do
      Result := Format('%s%d', [Result, Byte((Ord(_Chr) And (1 Shl i)) <> 0)]);
End;
Edit: Für nen ganzen String musst Dir das dann halt zusammenpuzzlen.

Union 29. Feb 2008 11:11

Re: String To Byte ...
 
Oder auch so:
Delphi-Quellcode:
function CharToBin(AChar : char): string;
var
  i: Integer;
begin
  SetLength(result, 8);
  for i := 1 to 8 do
  begin
    if ((Byte(AChar) shl (i-1)) shr 7) = 0 then
      result[i] := '0'
    else
      result[i] := '1';
  end;
end;

cherry 29. Feb 2008 11:47

Re: String To Byte ...
 
Vielen Dank euch beiden...

das Beispiel von "Union" verstehe ich besser... verwtehe eigentlich alles bis auf byte ( "if ((Byte(AChar) shl (i-1)) shr 7) = 0 then" )

was berwirkt dieses byte dort genau?

DeddyH 29. Feb 2008 11:57

Re: String To Byte ...
 
Das ist ein Typecast auf Byte, damit aus 'A' 65 wird.

cherry 29. Feb 2008 12:07

Re: String To Byte ...
 
:oops: Danke euch allen!

Kroko1999 29. Feb 2008 12:25

Re: String To Byte ...
 
nur mal so zum Verständnis
Titel: String to Byte: geht gar nicht
Titel: Char To Byte: per Chr(Char);
Titel: Char to BinärString: s.o.

SirThornberry 29. Feb 2008 12:26

Re: String To Byte ...
 
Titel: Char To Byte: per Char(Char);

dann ist es ein richtiger Typecast und nicht nur ein Funktionsaufruf.

Matze 29. Feb 2008 12:52

Re: String To Byte ...
 
Zitat:

Zitat von DeddyH
Das ist ein Typecast auf Byte, damit aus 'A' 65 wird.

Anstelle des Typecasts kann man übrigens auch die Funktion Delphi-Referenz durchsuchenOrd nutzen, was s-off macht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:19 Uhr.
Seite 1 von 2  1 2      

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-2025 by Thomas Breitkreuz