Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi PHP nach Delphi (Syntaxfrage) (https://www.delphipraxis.net/183275-php-nach-delphi-syntaxfrage.html)

dGeek 26. Dez 2014 15:31

Delphi-Version: XE2

PHP nach Delphi (Syntaxfrage)
 
Frohe Weihnachten!

Ich habe folgenden PHP-Code gefunden, welcher einen etwas längeren String konvertieren soll.
Den möchte ich gerne in Delphi umschreiben, aber ich verstehe die Syntax gerade nicht und das Äquivalent in Delphi. Kann wer helfen?

Code:
$ID = '12345678901234567';
$temp = '';

for ($i = 0; $i < 8; $i++) {
 $temp .= chr($ID & 0xFF);
 $ID >>= 8;
}
Ich verstehe das "& 0xFF" und das ">>=" nicht.
Ganz seltsam finde eich auch, dass ich in Delphi die "ID" (17 Stellen), welche in einem Edit steht, nicht zu einem Int64 (19 Stellen) konvertieren kann (myInt64 := StrToInt64(TestEdit.Text);).

DeddyH 26. Dez 2014 16:23

AW: PHP nach Delphi (Syntaxfrage)
 
Ein Versuch:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
const
  s = '12345678901234567';
var
  ID: int64;
  i: integer;
  temp: string;
begin
  ID := StrToInt64(s);
  temp := '';
  for i := 0 to 7 do
    begin
      temp := temp + Chr(ID and $FF);
      ID := ID shr 8;
    end;
  ShowMessage(temp);
end;
Ergebnis (Delphi 7, hatte ich gerade parat):
Zitat:

‡Kk]TÜ+

dGeek 26. Dez 2014 20:15

AW: PHP nach Delphi (Syntaxfrage)
 
Komischerweise sind die Resultate vom PHP-Ergebnis korrekt, aber nicht die von Delphi.
Ob das an Unicode liegt oder etwas ähnlichem ?

(Edit) Ok Problem wurde behoben. CHr durch AnsiChar ersetzen (wie logisch...) und es klappt!


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