Problema en C++ con AnsiStrings en Hex

Iniciado por bwsr, 6 Febrero 2013, 21:20 PM

0 Miembros y 1 Visitante están viendo este tema.

bwsr

Buenas, estoy desarrollando una aplicacion C++ Builder en la que tengo un problemilla con unos AnsiString en los que tengo unos valores en Hexadecimal pero guardados como AnsiString.

Si hago esto funciona sin problemas:

AnsiString hex = "\xFF\xFF";
Funcion(hex);

-----

Pero si tengo dos AnsiString separados así, no se como juntarlos y que me los pase como antes.

AnsiString hex1 = "FF";
AnsiString hex2 = "FF";
AnsiString HEX = "\x"+hex1+"\x"+hex2;

Funcion(HEX);

---------

A ver si alguien me hecha un cable.

Saludos y gracias. :)

amchacon

CitarInsert
Agrega un texto a una cadena en la posición que se le indique.

void __fastcall Insert(const AnsiString& str, int index);

Lo que equivaldría:

Código (cpp) [Seleccionar]
AnsiString hex1 = "FF";
AnsiString hex2 = "FF";
hex1.Insert(hex2,hex1.Length()-1);
Funcion(hex1);


http://www.alciro.org/alciro/Programacion-cpp-Builder_12/metodos-clase-AnsiString_311.htm
Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar

bwsr

#2
Creo que no me he explicado bien.

Yo tengo unos valores guardados en varios AnsiString como texto pero son valores en Hex.

es decir

AnsiString a = "FF";
AnsiString b = "FF";

Pero en realidad son texto y yo quiero juntarlas dentro de otro AnsiString pasandolas como si fuesen datos en hex poniendoles el "\x" por delante.
En definitiva, si declaro el AnsiString asi:

AnsiString losDos = "\xFF\xFF";

Al pasarselo a la función me lo pasa como si fuesen valores en Hex.

Mi problema esque  no se como juntar dos AnsiStrings de texto y añadirles el "\x" para formar una cadena como con la variable "losDos"

AnsiString hex1 = "FF";
AnsiString hex2 = "FF";
AnsiString HEX = "\x"+hex1+"\x"+hex2;


Gracias por la respuesta de todas maneras.

Un saludo y gracias.