Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.04.22;
Скачать: CL | DM;

Вниз

Конвертировать IP адрес из строки в какой ни числовой тип... ;)   Найти похожие ветки 

 
Салат   (2007-03-01 10:35) [0]

Подскажите пожалуйста, есть ли готовые функции по переводу IP адреса из строки в числовой тип (longword например) и его восстановление обратно в строковый тип?
Функция для перевода IP в DWord есть, её написал некий Roni Havas (IP2HEX). А вот обратной функции я не нашел...

IP2HEX - http://www.sources.ru/delphi/delphi_convert_normal_ip_to_dword.shtml


 
Dmitrij_K   (2007-03-01 10:43) [1]

CRTSOCK.pas

Function IpToLong(ip:string):LongInt;
var
 x,i:byte;
 ipx:array[0..3] of byte;
 v:integer;
begin
 Result:=0;
 longint(ipx):=0; i:=0;
 for x:=1 to length(ip) do
  if ip[x]="." then begin
   inc(i);
   if i=4 then exit;
  end else begin
   if not (ip[x] in ["0".."9"]) then exit;
   v:=ipx[i]*10+ord(ip[x])-ord("0");
   if v>255 then exit;
   ipx[i]:=v;
  end;
 result:=longint(ipx);
end;

Function LongToIp(Long:LongInt):string;
var
 ipx:array[0..3] of byte;
 i:byte;
begin
 longint(ipx):=long;
 Result:="";
 for i:=0 to 3 do result:=result+IntToStr(ipx[i])+".";
 SetLength(Result,Length(Result)-1);
end;


 
Сергей М. ©   (2007-03-01 10:48) [2]

см. inet_addr(), inet_ntoa() (Winsock.pas)


 
Салат   (2007-03-01 11:03) [3]

Большое спасибо!



Страницы: 1 вся ветка

Текущий архив: 2007.04.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.044 c
15-1175004987
oldman
2007-03-27 18:16
2007.04.22
Яндекс ответа не дает, прошу туда не посылать...


1-1172136353
Medusa__
2007-02-22 12:25
2007.04.22
Создание компонент динамически.


15-1174588113
JohnKorsh
2007-03-22 21:28
2007.04.22
Как из файла *.msg извлечь приложение?


1-1172341037
Kolan
2007-02-24 21:17
2007.04.22
Code template в BDS 2006


15-1175120302
хмм
2007-03-29 02:18
2007.04.22
Кто поёт песню рыбы-пилы в мультике?