Empezar Enviar un sitio

Codificador y decodificador de URL

Developer Tools

Aplica codificación por ciento a un texto o recupera el original, eligiendo entre una URL completa y un solo valor de consulta.

Resultado

Resultado —
  • Caracteres de entrada —
  • Caracteres de salida —
  • Bytes de salida — B

Cambia cualquier dato y el resultado se actualiza al instante.

Fórmula y reglas

  • La codificación por porcentaje escribe cada byte fuera del conjunto permitido como un signo de porcentaje seguido de dos dígitos hexadecimales.
  • A space becomes %20, a slash becomes %2F, and the ampersand becomes %26 — the last one matters because & separates query parameters.
  • encodeURI deja intactos : / ? # & = para que la estructura de un enlace se conserve, mientras que encodeURIComponent los escapa.
  • La decodificación convierte cada triplete %XX de nuevo en los bytes UTF-8 originales, por lo que el texto en chino vuelve como caracteres nativos.

Ejemplos resueltos

Un valor dentro de una cadena de consulta

Entrada a b&c con el valor scope.

Resultado a%20b%26c — the & is escaped so it cannot be read as a second parameter.

El mismo texto como URL completa

Entrada a b&c con el alcance de toda la URL.

Resultado a%20b&c — the space is still escaped but & is preserved as a separator.

Decodificación de texto chino

Entrada %E4%BD%A0%E5%A5%BD

Resultado 你好: tres bytes UTF-8 se convierten en tres tripletes %XX y la decodificación los restaura.

Preguntas frecuentes

¿Cuándo necesito encodeURIComponent en lugar de encodeURI?

Usa encodeURIComponent para cualquier valor que coloques después de ? o &, porque un & o = sin escapar dentro de un valor dividiría la consulta. Usa encodeURI solo en un enlace completo que ya tenga sus separadores en su sitio.

Why does a space sometimes become + instead of %20?

The plus sign belongs to form encoding for application/x-www-form-urlencoded bodies, where it means a space. JavaScript URL functions write %20 instead. This tool reads + as a space when decoding and always writes %20 when encoding, so the two conventions do not collide.

Why do I see %25 in my links?

%25 is an encoded percent sign, which means the text was encoded twice. Encode once at the point where the value is inserted, not again when building the final link.

¿Qué ocurre con una secuencia % incompleta?

La decodificación falla, porque % debe ir seguido de exactamente dos dígitos hexadecimales. Esta herramienta informa del problema en lugar de eliminar caracteres silenciosamente.

Descargo de responsabilidad: Los resultados siguen la fórmula mostrada en esta página y son solo orientativos. Las cantidades reales varían según los materiales, la técnica y las condiciones, así que deja un margen antes de hacer el pedido.