public static void generarReporte() { StringWriter salida = new StringWriter(); try { salida.WriteLine("<html>"); salida.WriteLine("<head><title>SBScript</title></head>"); salida.WriteLine("<body bgcolor=\"black\">"); salida.WriteLine("<h1><center><FONT COLOR=silver>PRACTICA 1<FONT></center></h1>\""); salida.WriteLine("<h1><center><FONT COLOR=81426E> " + "SBScript" + " <FONT></center></h1>"); salida.WriteLine("<br>"); salida.WriteLine("<center>"); salida.WriteLine("<table border= 1 width= 500>"); salida.WriteLine("<tr>"); salida.WriteLine("<th><font color=\"#24AAFF\" face=\"courier new\"> TIPO </font></th>"); salida.WriteLine("<th><font color=\"#24AAFF\" face=\"courier new\"> DESCRIPCION </font></th>"); salida.WriteLine("<th><font color=\"#24AAFF\" face=\"courier new\"> ARCHIVO </font></th>"); salida.WriteLine("<th><font color=\"#24AAFF\" face=\"courier new\"> FILA </font></th>"); salida.WriteLine("<th><font color=\"#24AAFF\" face=\"courier new\"> COLUMNA </font></th>"); salida.WriteLine("</tr>"); for (int i = 0; i < errores.Count; i++) { Error s = (Error)errores[i]; salida.WriteLine("<tr>"); salida.WriteLine("<th><font color=\"white\">" + s.tipo + "</font></th>"); salida.WriteLine("<th><font color=\"white\">" + s.nombre + "</font></th>"); salida.WriteLine("<th><font color=\"white\">" + s.archivo + "</font></th>"); salida.WriteLine("<th><font color=\"white\">" + s.fila + "</font></th>"); salida.WriteLine("<th><font color=\"white\">" + s.columna + "</font></th>"); } salida.WriteLine("</table><br>"); salida.WriteLine("</body></html>"); Listas.MensajeConsola.Add("> Reporte creado correctamente.\n"); } catch (IOException e) { Listas.MensajeConsola.Add("> Error al crear el reporte: " + "\n"); } if (Listas.ruta == "") { Listas.ruta = "C:/Users/Aylin/Documents/Visual Studio 2015/Projects/SBScript"; } String ruta = Listas.quitarEspaciosFinal(Listas.ruta) + "\\Reporte.html"; using (System.IO.StreamWriter file = new System.IO.StreamWriter(ruta)) { file.WriteLine(salida); } try { Process.Start(ruta); } catch (Exception e) { // MessageBox.Show(e.ToString()); } }
public static String cadenaMetodo(ParseTreeNode nodo) { cadena = ""; String cad = Listas.obtenerCadena(nodo); cad = cad.Replace("(Keyword)", "").Replace("(Key symbol)", "").Replace("(cadena)", "").Replace("(numero)", "").Replace("(id)", ""); return(cad); }
public static void generarAST(ParseTreeNode raiz, String nombre) { if (raiz == null) { Reporte.agregarMensajeError("La funcion es vacia", "Error Semantico", Listas.nodoActual.Token.Location.Line, Listas.nodoActual.Token.Location.Column); return; } String grafodot = DIBUJAR.getDotFuncion(raiz); String ruta = ""; if (Listas.ruta == "") { ruta = Listas.rutaDefinida + nombre; } else { if (Directory.Exists(Listas.ruta)) { ruta = Listas.quitarEspaciosFinal(Listas.ruta) + "\\" + nombre; } else { Reporte.agregarError("No existe ruta: " + ruta, "Error General", 0, 0); ruta = Listas.rutaDefinida + nombre; } } using (System.IO.StreamWriter file = new System.IO.StreamWriter(ruta + ".dot")) { file.WriteLine(grafodot); } ProcessStartInfo startInfo = new ProcessStartInfo("C:\\Program Files (x86)\\Graphviz 2.28\\bin\\dot.exe"); startInfo.Arguments = "dot -Tpng \"" + ruta + ".dot\" -o \"" + ruta + ".png\""; try { Process.Start(startInfo); } catch (Exception e) { MessageBox.Show(e.ToString()); } }