Busca la funcion que necesitas!

lunes, 11 de abril de 2011

DELPHI - Pasar de string a Byte Array

Bueno hace poquito que me adentré en delphi, y necesitaba convertir una string a un byte array o array of byte, para esto pues simplemente declaramos el tipo byte array

type
  TByteArray = array of byte;

y después hacemos la función y la implementamos en cualquier parte del programa:


Código:
function StringToByteA(buffer: String;Lar:Integer): TByteArray;
var
   i: integer;
begin
   SetLength(Result, Lar-1);
   for i := 0 to Lar-1 do
   begin
     Result[i] := ord(buffer[i+1]);
  end;
end;

2 comentarios:

  1. Has probado esa función ¿? Te ha funcionado ¿? Esta mal, tienes un error cuando dimensionas el array, porque el TByteArray es un array estático y no sirve el SetLength ahí, usa TBytes. Saludos

    ResponderEliminar
    Respuestas
    1. Sí esta probada bajo Delphi 7 SE y funciona, porqué dices que es un array estático?, no está definido su tamaño me parece que cuando está declarado de esa forma es sólo un puntero, y SetLength permite modificarlo de esta manera, incluso de array's multidimensionales, de todas formas la función es vieja, recien me iniciaba en Delphi, ahora ando tocando muchísimo más C y ASM (Fasm), pero no he publicado códigos nuevos pero los puedes mirar en H-sec jeje hay una inyeccion en asm muy buena, saludos

      Eliminar