[Back to NUMBERS SWAG index] [Back to Main SWAG index] [Original]
{
GREG VIGNEAULT
> So to assign the File I will need the HEX in String format.
}
Type
String8 = String[8];
Var
MyStr : String8;
ALong : LongInt;
{ convert a LongInt value to an 8-Character String, using hex digits }
{ (using all 8 Chars will allow correct order in a sorted directory) }
Procedure LongToHex(AnyLong : LongInt; Var HexString : String8);
Var
ch : Char;
Index : Byte;
begin
HexString := '00000000'; { default to zero }
Index := Length(HexString); { String length }
While AnyLong <> 0 do
begin { loop 'til done }
ch := Chr(48 + Byte(AnyLong) and $0F); { 0..9 -> '0'..'9' }
if ch > '9' then
Inc(ch, 7); { 10..15 -> 'A'..'F'}
HexString[Index] := ch; { insert Char }
Dec(Index); { adjust chr Index }
AnyLong := AnyLong SHR 4; { For next nibble }
end;
end;
begin
ALong := $12345678; { a LongInt value }
LongToHex(ALong, MyStr); { convert to hex str}
WriteLn;
WriteLn('$', MyStr); { display the String}
WriteLn;
end.
[Back to NUMBERS SWAG index] [Back to Main SWAG index] [Original]