# Convertir números grandes a hexadecimal

**URL:** <https://foros.velneo.com/t/convertir-numeros-grandes-a-hexadecimal/10785>\
**Category:** Velneo\
**Created:** [11 Junio, 2021 09:37 UTC](https://foros.velneo.com/t/convertir-numeros-grandes-a-hexadecimal/10785 "2021-06-11T09:37:34Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![roberto](https://avatars.discourse-cdn.com/v4/letter/r/8baadc/32.png) [@roberto](https://foros.velneo.com/u/roberto)\
**Post date:** [11 Junio, 2021 09:37 UTC](https://foros.velneo.com/t/convertir-numeros-grandes-a-hexadecimal/10785/1 "2021-06-11T09:37:35Z")

</div>

Me ha surgido en una aplicación el tener que convertir números de 23 cifras a hexadecimal. La función nativa de velneo, numberToStringHex tiene un límite de rango int de 32 bits con signo (2147483648).

Probando con la api de javascript, la función toString(16) también debe tener una limitación, que no permite la conversión completa de números tan grandes.

Finalmente he conseguido hacerlo utilizando una función que he encontrado y que dejo aquí, por si a alguien le surge un caso parecido.

===================================================

```auto
function dec2hex(str){
    var dec = str.toString().split(''), sum = [], hex = [], i, s
    while(dec.length){
        s = 1 * dec.shift()
        for(i = 0; s || i < sum.length; i++){
            s += (sum[i] || 0) * 10
            sum[i] = s % 16
            s = (s - sum[i]) / 16
        }
    }
    while(sum.length){
        hex.push(sum.pop().toString(16))
    }
    return hex.join('')
}

```

===============================================

Un saludo

---

<div class="post-metadata">

**Author:** ![mat.cas](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/mat.cas/32/5720_2.png) [@mat.cas](https://foros.velneo.com/u/mat.cas)\
**Post date:** [11 Junio, 2021 13:01 UTC](https://foros.velneo.com/t/convertir-numeros-grandes-a-hexadecimal/10785/2 "2021-06-11T13:01:05Z")

</div>

Hola Roberto, gracias por el aporte.

Te pido si podés, pone el código en formato código para que se entienda más. Edita el post con el icono del lápiz y luego pegas tu código, lo seleccionas y cliqueas en la barra superior de donde escribis el post hay un icono así \</\>

Saludos  
[Matias de Rimatcom | Desarrollador Certificado 2021 | Consultoría Velneo](https://rimatcom.com/consultoria-velneo/)

---

<div class="post-metadata">

**Author:** ![roberto](https://avatars.discourse-cdn.com/v4/letter/r/8baadc/32.png) [@roberto](https://foros.velneo.com/u/roberto)\
**Post date:** [11 Junio, 2021 13:39 UTC](https://foros.velneo.com/t/convertir-numeros-grandes-a-hexadecimal/10785/3 "2021-06-11T13:39:12Z")

</div>

Perdón no me di cuenta. Corregido.
