Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   convertir string (https://www.clubdelphi.com/foros/showthread.php?t=34195)

jsanchez 31-07-2006 21:38:19

convertir string
 
hola foro, esta es la situacion

tengon un string, por ejemplo 70001, y quiero convertirlo a otro string dado un formato especifico, por ejemplo 700-01-00-00, la parte de los ceros a la derecha no es problema, el problema me viene con el primer string, como se podría hacer?

muchas gracias.

roman 31-07-2006 21:56:37

En la unidad MaskUtils viene la función FormatMaskText que podrías usar así:

Código Delphi [-]
ShowMessage(FormatMaskText('999-99-\0\0-\0\0;0', '70001'));

// Saludos

jsanchez 31-07-2006 22:14:00

Muchas gracias por la respuesta, pero:

La mascara es variable en el sentido que el usuario la guarda como parametros, de la siguiente forma ###-##-##-##, o cualquier otra teniendo en cuenta que solo puede usar los simbolos # y 9, haciendo pruebas con la funcion que me has dicho, el resultado de meter 70001 en la variablel auxstr1
y teniendo en cuenta que auxstr2 vale ###-##-##-##, de la siguiente manera
Código:

auxStr1:=formatMaskText(auxstr2,auxstr1);
me da como resultado '700- - - '
también he probado cambiando el # por 9, pero me da el mismo resultado. Me faltaria el 01, porque los otros 0's los manejo posteriormente. Algo que no dije antes es que la variable de entrada puede cambiar de tamaño, es decir, pueden meter tambien 500010101.

roman 31-07-2006 22:23:19

En el formato que puse antes, fíjate que la máscara se completa con ;0 al final. Eso indica que el valor de entrada ('70001' p. ej.) no incluye los guiones. Prueba con eso.

// Saludos


La franja horaria es GMT +2. Ahora son las 07:17:04.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi