Exemple #1
0
        private void button5_Click(object sender, EventArgs e)
        {
            analisadorLexico   analisadorLex = new analisadorLexico();
            Prueba             ppp           = new Prueba();
            LinkedList <Token> tokenLista    = analisadorLex.scanner(info);
            var nodos = ppp.planes(tokenLista);

            Arbol(nodos);

            Negrita(nodos);
        }
Exemple #2
0
        private void button3_Click(object sender, EventArgs e)

        {
            treeView1.Nodes.Clear();
            pictureBox1.Visible = false;
            label1.Text         = "";
            int    contador = 1;
            String infos    = "";

            foreach (Control item in tabControl1.SelectedTab.Controls)
            {
                if (item.GetType().Equals(typeof(RichTextBox)))
                {
                    infos = item.Text;
                }
            }
            analisadorLexico   analisadorLex = new analisadorLexico();
            LinkedList <Token> listaTokens   = analisadorLex.scanner(infos);
            LinkedList <Error> listaErrores  = analisadorLex.Errores();

            if (analisadorLex.errores < 1)
            {
                StreamWriter write = new StreamWriter("C:\\Users\\CARLOS\\Downloads\\Lista de Tokens.html");
                write.WriteLine("<html>");
                write.WriteLine("<head><h1> LISTA DE TOKENS</h1></head>");
                write.WriteLine("<body>");
                write.WriteLine("<p><h3> Aqui se muestra la lista de tokens del archivo: " + ruta + "  que fue previamente analisado </h3></p>");
                write.WriteLine("<p></p>");
                write.WriteLine("<table border='1'>");
                write.WriteLine("<tr>");
                write.WriteLine("<td>No.</td><td>Linea</td><td>Lexema</td><td>Token</td>");
                foreach (Token item in listaTokens)
                {
                    write.WriteLine("<tr>");
                    write.WriteLine("<td>" + contador + "</td>");
                    write.WriteLine("<td>" + item.getLinea() + "</td>");
                    write.WriteLine("<td>" + item.getValue() + "</td>");
                    write.WriteLine("<td>" + item.getType() + "</td>");
                    write.WriteLine("</tr>");

                    contador++;
                }
                write.WriteLine("</table>");
                write.WriteLine("<p></p>");
                write.WriteLine("<p><h4>Se obtuvo un total de:" + (contador - 1) + " Tokens. </h4> </p>");
                write.WriteLine("<p><h3>No hubieron errores en el analisis del archivo</h3></p>");
                write.WriteLine("</body>");
                write.WriteLine("</html>");
                write.Close();

                Process.Start("C:\\Users\\CARLOS\\Downloads\\Lista de Tokens.html");

                Prueba ppp   = new Prueba();
                var    nodos = ppp.planes(listaTokens);
                Arbol(nodos);

                Negrita(nodos);
            }
            else
            {
                StreamWriter write = new StreamWriter("C:\\Users\\CARLOS\\Downloads\\Lista de Tokens.html");
                write.WriteLine("<html>");
                write.WriteLine("<head><h1> LISTA DE TOKENS</h1></head>");
                write.WriteLine("<body>");
                write.WriteLine("<p><h4> Aqui se muestra la lista de tokens del archivo: " + ruta + "  que fue previamente analisado </h4></p>");
                write.WriteLine("<p></p>");
                write.WriteLine("<table border='1'>");
                write.WriteLine("<tr>");
                write.WriteLine("<td>No.</td><td>Linea</td><td>Lexema</td><td>Token</td>");
                foreach (Token item in listaTokens)
                {
                    write.WriteLine("<tr>");
                    write.WriteLine("<td>" + contador + "</td>");
                    write.WriteLine("<td>" + item.getLinea() + "</td>");
                    write.WriteLine("<td>" + item.getValue() + "</td>");
                    write.WriteLine("<td>" + item.getType() + "</td>");
                    write.WriteLine("</tr>");

                    contador++;
                }
                write.WriteLine("</table>");
                write.WriteLine("<p></p>");
                write.WriteLine("<p><h4>Se obtuvo un total de:" + (contador - 1) + " Tokens. </h4> </p>");

                write.WriteLine("<p></p>");
                write.WriteLine("<p><h2> Aqui se muestra la lista de errores del archivo: " + ruta + "  que fue previamente analisado </h2></p>");
                write.WriteLine("<p></p>");
                write.WriteLine("<table border='1'>");
                write.WriteLine("<tr>");
                write.WriteLine("<td>No.</td><td>Linea</td><td>Columa</td><td>Caracter</td><td>Descripcion</td>");
                contador = 1;
                foreach (var item in listaErrores)
                {
                    write.WriteLine("<tr>");
                    write.WriteLine("<td>" + contador + "</td>");
                    write.WriteLine("<td>" + item.getLinea() + "</td>");
                    write.WriteLine("<td>" + (item.getColumna() - 1) + "</td>");
                    write.WriteLine("<td>" + item.getError() + "</td>");
                    write.WriteLine("<td>" + item.getDes() + "</td>");
                    write.WriteLine("</tr>");

                    contador++;
                }
                write.WriteLine("</table>");
                write.WriteLine("<p></p>");
                write.WriteLine("<p><h3>Hubo un total de: " + analisadorLex.errores + " errores.</h3></p>");
                write.WriteLine("<p></p>");
                write.WriteLine("</body>");
                write.WriteLine("</html>");
                write.Close();

                Process.Start("C:\\Users\\CARLOS\\Downloads\\Lista de Tokens.html");
            }
        }