Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi StrToBin <> BinToStr (https://www.delphipraxis.net/100891-strtobin-bintostr.html)

Tommy1988 5. Okt 2007 13:25

Re: StrToBin <> BinToStr
 
Ne, da blick ich nicht durch. Ich habs jetzt mal so probiert.

Delphi-Quellcode:
procedure TForm1.Edit6Change(Sender: TObject);
var
Str, Ergebnis: String;
begin
 Memo6.Text := Chr(BitsToByte(Edit6.Text));
 Str := Edit6.Text;
 Ergebnis := Copy(Str, 9, 8);
 Caption := 'Ergebnis: ' + Ergebnis;
end;
Edit:
Damit wollte ich zumindest schon einmal die einzelnen Strings rausfischen.

DeddyH 5. Okt 2007 13:29

Re: StrToBin <> BinToStr
 
Nochmal alles zusammen:
Delphi-Quellcode:
function BitsToByte(const ABit: string): Byte;
var i: integer;
    sBit: byte;
begin
  sBit := 1;
  Result := 0;
  for i := Length(ABit) downto 1 do
    begin
      if ABit[i] <> '0' then
        Result := Result or sBit;
      sBit := sBit shl 1;
    end;
end;

function BitStrToCharStr(const sBits: string): string;
var iOffset: integer;
begin
  iOffset := 0;
  Result := '';
  while iOffset < Length(sBits) do
    begin
      Result := Result + Chr(BitsToByte(Copy(sBits,iOffset + 1,8)));
      inc(iOffset,8);
    end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(BitStrToCharStr('0100000101000010'));
end;
Du musst aber darauf achten, dass alle Binärstrings 8 Zeichen lang sind (OK, beim letzten ist das egal).

Tommy1988 5. Okt 2007 13:42

Re: StrToBin <> BinToStr
 
Da brauch ich jetzt ersteinmal etwas zeit um das zu verstehen.
Wenn ichs verstanden habe melde ich mich und werde den Code anwenden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:38 Uhr.
Seite 2 von 2     12   

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