Últimas actualizaciónes:
Cómo convertir HTML a Javascript y Java

Cómo convertir HTML a Javascript y Java, online

— O —
— O — Herramientas

En ocasiones necesitamos asignar un texto HTML a una variable del tipo String en Javascript o Java. Esta tarea, que puede parecer sencilla de realizar, muy pronto se puede convertir en una pesadilla si el tamaño del HTML es como Kong montado en los hombros de Godzilla [algo digno de ver por cierto 🐒]

Por diferentes razones, posiblemente equivocadas, me he visto en el escenario de hacer una asignación como la mencionada. Al principio confiaba en el soporte de los lenguajes para manejar la construcciones de literales en multiple líneas. Pero estaba equivocado. 

|Observación: En mi defensa tengo que decir que esto fue antes la inclusión de Template Literals en Javascript y Text blocks en Java. Aún así, esta herramienta que te vamos a presentar sigue siendo de utilidad para algunos escenarios.|

Tabla de contenidos

El caso de Java y el manejo de literales de String en múltiples líneas

Si quisiéramos asignar a una variable en Java, pongamos por caso, el siguiente HTML de una sencilla tabla con tres filas:

<table style="width:100%">
  <tr>
    <th>Firstname</th>
    <th>Lastname</th>
    <th>Age</th>
  </tr>
  <tr>
    <td>Jill</td>
    <td>Smith</td>
    <td>50</td>
  </tr>
  <tr>
    <td>Eve</td>
    <td>Jackson</td>
    <td>94</td>
  </tr>
</table>

Vamos a estar un tiempito creando un literal de String a partir de esa entrada.

Si estás trabajando con Java [el 2️⃣ mejor lenguaje del mundo] quizás el IDE que usas tenga soporte para hacer rápidamente la construcción del literal, simplemente copiando y pegando el texto como, por ejemplo: con Eclipse:

Convertir HTML a String

Ok, lo anterior funciona bastante bien para algunos escenarios, pero ¿Qué pasa si queremos usar StringBuilder? ¿Se complica la conversión?

No realmente. Si usas Eclipse [¿El mejor IDE para Java?] tenes una forma rápida de convertir tu variable String en un StringBuilder. Simplemente selecciona el nombre de la variable y presiona la combinación de teclas Ctrl + 1. Se despliega un modal con varias opciones, entre ellas la posibilidad de hacer la conversión a StringBuilder, como se puede apreciar en la siguiente imagen:

Convertir HTML a String

Por otro lado, a partir de la JDK 13 se encuentra la funcionalidad conocida como Text blocks, en donde podemos tener algo así:

 public String getBlockOfHtml() {
     return """
             <html>
                 <body>
                     <span>example text</span>
                 </body>
             </html>""";
 }

|Este parece ser el punto de partida de la petición del soporte para literales de múltiples líneas en Java. Vale le panea leerlo: Multi-line String literals.|

Bueno, al final parece que no tiene sentido la herramienta que venia a ofrecerte para que hicieras conversiones rápidas a literales de String dada una entrada HTML. Pero ya que llegué hasta acá, te lo voy a mostrar igual.

Cómo crear literales de String Javascript y Java a partir de HTML

Existe una forma rápida de hacer esa conversión y es utilizando una herramienta en línea desarrollada por Srinivas Dasari.

Esta herramienta te permite pegar el HTML y crear el String literal correspondiente, asignado a una variable. Genera tanto código Java (utilizando, o no, StringBuilder), como código Javascript.

Convertir HTML a String

A modo de resumen

Tengo una curiosa atracción por la herramientas sencillas, desarrolladas para hacer un único trabajo y hacerlo bien. Sin mucha "azúcar para los ojos" pero ingeniosas. 

Como siempre, detrás de toda herramienta hay alguien. En este caso es el desarrollador Srinivas Dasari, quién tiene más utilidades que pone a disposición de forma gratuita en su sitio web: http://pojo.sodhanalibrary.com

Convertir HTML a String

Podés seguirlo en su cuenta de Twitter, Facebook o Github. Leer sus análisis financieros en su blog y comprarle un café a manera de reconocimiento por su gran trabajo.

¡Gracias Srinivas Dasari!

¡Nos vemos! Peace. ✌

[La foto de portada es de Tracy Adams ]

 

 

Comentarios