[COLOR="RoyalBlue"]السلام عليكم و رحمة الله و بركاته
كيف يتم التحويل من Hex الي String ?
استفسار بسيط: ما سبب غياب دروس الدلفي الخاصة بالمنتدي اكثر من اسبوعين ?[/COLOR]
احد اشهر الطريق : اضافة '$' يسار قيمة الHex ثم تحويله إلى عدد باستخدام strToInt
PHP كود :
Function Hex2Int(H:String):Integer;
Begin
Result:=StrToInt('$'+H);
End;
مثال للاستعمال
PHP كود :
var
X : integer;
begin
X := Hex2Int('DEAD');
showmessage(inttostr( X ));
end;
بالنسبة دورة دلفي : تمرين الدرس الاخير لم يشارك به الا شخص واحد فقط وهذا شيئ محبط نظرا للجهذ المبذول للقيام بالدورة
مع ذلك الدرس الموالي قريبا ان شاء الله
والسلام عليكم
إقتباس :احد اشهر الطريق : اضافة '$' يسار قيمة الhex ثم تحويله إلى عدد باستخدام strtoint
المعذرة ، هذا تحويل إلى النظام العشري.
[COLOR="RoyalBlue"]اخي DeltaAziz
اولا: الحمد لله ان الدورة بخير.
ثانيا: سؤالي هو عن تحويل Hex الي String و ليس Hex الي Decimal ![/COLOR]
عذرا! يبدو ان المشروع الذي اعمل عليه اعمى بصري
-
الHex هو اصلا String
فماذا تعني التحويل الى String ؟ ضع مثال قبل وبعد التحويل
ربما ارى النور!
[COLOR="RoyalbLUE"]اخي DeltaAziz
اسلامة بصرك.
مثال: اذا ادخلت 47 يكون الناتج "G".[/COLOR]
هذا هو المطلوب, شكرا اخي DeltaAziz.
وهذا كود بسيط يحول المدخلات في edit1 من النظام السداسي عشر إلى النظام العشري ثم يقلبها إلى حروف (حسب جدول Ascii) ، لتظهر النتيجة في edit2.
كود :
procedure TForm1.Button1Click(Sender: TObject);
var
X: integer;
mystring:string;
begin
mystring:=Edit1.Text;
Edit2.Text:='';
try
while length(mystring) <> 0 do
begin
X := strtoint('$'+mystring[1]+mystring[2]);
Edit2.Text:=Edit2.Text+char(X);
Delete(mystring, 1, 2);
end;
Except
edit2.Text:='';
beep;
end;
end;
تصبحون على خير.