Estas fallando en que aG9sYQ== es 'hola' en ASCII y tu programa está codificado en EBCDIC
El sáb., 2 may. 2020 a las 1:17, Miguel SB (<[email protected]>) escribió: > Buenas tardes, > Tengo el siguiente codigo para codificar un texto en base64, para esto > estoy usando servicio que encontre en la pagina > https://www.scottklement.com/base64/ pero no me esta retornando el valor > en base64 correcto: > > H bnddir('BASE64R4') > *---------------------------------------------------------------* > /copy /BASE64/QRPGLESRC/base64_h.rpgle > *---------------------------------------------------- > *- ESTRUCTURAS DE TRABAJO - > *---------------------------------------------------- > D wbase64xml S 9999999A inz > d wwEncoded s 100000A Inz(*blanks) > d wwEncLen s 10i 0 > d datautf8 s 10A INZ(*BLANKS) > > /free > wbase64xml = 'hola'; > datautf8 = %trim(wbase64xml); > > wwEncLen = base64_encode(%addr(datautf8) > :%len(datautf8) > :%addr(wwEncoded) > :%size(wwEncoded)); > *INLR=*ON; > /end-free > > Lo que estoy enviando es la palabra "hola" para que retorne su > codificacion en base64, pero el codigo que muestro me retorna es: > iJaTgUBAQEBAQA== > cuando lo correcto es que retorne: aG9sYQ== > Por favor me pueden indicar donde estoy fallando, este codigo lo hice > tomando como referencia un ejemplo que esta en este foro: > https://code400.com/forum/forum/iseries-programming-languages/rpg-rpgle/145104-ibm-base64-api-in-rpg-apr_base64_decode-procedure > Otro punto que no entiendo es el uso de %addr, no se porque tengo que > enviar asi el texto que quiero convertir. > > Gracias por las respuestas > > ____________________________________________________ > Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) > Forum.Help400 © Publicaciones Help400, S.L.
____________________________________________________ �nete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 � Publicaciones Help400, S.L.
