Ver Mensaje Individual
  #8  
Antiguo 21-11-2008
Delfin Delfin is offline
Registrado
 
Registrado: mar 2005
Posts: 5
Reputación: 0
Delfin Va por buen camino
Cita:
Empezado por ColdFusion Ver Mensaje
Código:
Function StrIPToHexIP(IpStr As String) As String
Dim SplitIp() As String
Dim ConvertingLoop As Integer
SplitIp = Split(IpStr, ".")
For ConvertingLoop = 0 To UBound(SplitIp)
StrIPToHexIP = StrIPToHexIP + Chr(SplitIp(ConvertingLoop))
Next ConvertingLoop
End Function
Tengo entendido que el UBound es para calcular el numero de elementos que tiene el arreglo. Lo que puedes hacer es meter tu cadena que tiene el arreglo en un TStringList de la siguiente manera:

Código Delphi [-]
Var
      Lista : TStringList;
begin
      Lista := TStringList.Create;
      Lista.DelimitedText := '192.98.34.9'; //En tu caso, tu variable por parámetro para la función
      Lista.Delimiter := '.';
      Maximo := Lista.Count; ///Este sería el equivalente de UBound para los StringList
      .... ///Ya aquí iría el resto de la implementación de la función

Ten en cuenta que los índices de los elementos de los StringList comienzan en 0, por lo que tu for en este caso, iría desde 0 hasta Maximo - 1. Ahora bien:

Cita:
Empezado por ColdFusion Ver Mensaje
el CStr
CStr convierte a cadena una variable, por tanto puedes usar cualquiera de las rutinas de conversión correspondientes (FloatToStr, IntToStr, etc). Consulta la ayuda de la unidad SysUtils, pues ahí estan todas las opciones que tienes disponibles y también StrUtils como dijeron anteriormente.

¡Saludos!

Última edición por Delfin fecha: 21-11-2008 a las 16:45:07.
Responder Con Cita