Cómo envolver HTML en instrucciones de salida C# o JSP

Pega el HTML y pulsa Html to C# code o Html to JSP code. La rama de C# devuelve un StringBuilder con una instrucción por línea de entrada; la de JSP devuelve esas mismas líneas como llamadas out.println y out.print dentro de un bloque <% %>. Los dos conversores tratan la entrada como texto: no se analiza el HTML, no se decodifican entidades y no se ejecuta nada.

La conversión se ejecuta en el navegador y sigue funcionando sin conexión. El resultado es un fragmento para un proyecto que ya tienes, donde estén en ámbito el StringBuilder de C# o el objeto out de JSP.

  1. Pega el marcado en el cuadro de texto.
  2. Pulsa Html to C# code para el fragmento con StringBuilder, o Html to JSP code para el bloque <% %>.
  3. Pulsa Copy para llevarte todo el resultado, o Clear para vaciar el cuadro y ocultar el panel de salida.
  4. Comprueba el fragmento allí donde lo pegues: la página escribe código, no lo compila ni lo ejecuta.

Qué genera cada uno de los dos conversores

Qué genera cada conversor

El conversor de C# empieza con StringBuilder sb = new StringBuilder(); y después escribe una instrucción por línea de entrada: sb.AppendLine("...") cuando la línea va seguida de un salto, y sb.Append("...") para la última línea sin salto. AppendLine añade el terminador de línea de la plataforma donde se ejecute el fragmento, que es lo habitual al escribir una respuesta.

El conversor de JSP envuelve la misma estructura línea a línea entre <% y %>: out.println("...") para las líneas seguidas de un salto y out.print("...") para la última sin salto, de modo que el fichero JSP reproduce el texto pegado línea por línea. Una entrada vacía produce un bloque <% %> vacío, y la rama de C# devuelve solo la declaración del StringBuilder.

Escapes y finales de línea

Dentro de los literales, una barra invertida se convierte en \\, una comilla doble en \", un tabulador en \t y los caracteres de control se escriben como escapes \uXXXX, así una línea pegada sigue siendo una línea de código generado. Las comillas simples y las llaves se dejan tal cual: el conversor de C# usa Append y AppendLine en lugar de AppendFormat, así que una regla CSS o un cuerpo JSON lleno de { y } no pueden tomarse por un marcador de formato ni provocar una FormatException al ejecutar el fragmento.

El cuadro de texto normaliza los finales de línea, así que los saltos CRLF y CR llegan como LF. El salto final de la entrada se conserva como un AppendLine o un println final en vez de eliminarse, y una última línea vacía queda como una instrucción vacía.

Lo que la página no hace

No analiza ni repara el marcado, no decodifica entidades como &amp; y no comprueba que el fragmento generado compile. No añade clase, espacio de nombres, imports ni llamada de escritura, y no puede saber si el HTML pegado está completo o bien formado.

Esta página convierte solo a C# y JSP; los conversores de ASP, VB.NET, Perl y SWS están en la página que convierte HTML en sentencias ASP, VB.NET, Perl o SWS. El panel de resultado permanece oculto hasta pulsar uno de los dos botones, y Copy con el resultado vacío muestra «No se pudo copiar. Copia el texto manualmente.»

Herramientas recientes: