@Override public void actionPerformed(ActionEvent e) { if (e.getSource() == jbtnLoad) { ruta = archivo.abrirRuta(); if (validar.validarAsm(ruta)) { jtxtAsm.setText(""); jtxtInst.setText(""); try { textoAsm = archivo.leerArchivo(ruta); jtxtAsm.setText(textoAsm); estado = 1; } catch (IOException a) { } } else { JOptionPane.showMessageDialog( null, "El archivo seleccionado no tiene la extensión correcta (asm)"); } } else if (e.getSource() == jbtnProcess) { if (estado > 0) { boolean endCODOP = false; arregloLineas = procesos.separaLineas(textoAsm); archivo.crearArchivos("inst", "#\tETQ\tCODOP\tOper\r\n"); archivo.crearArchivos("err", "#\tCodigo\t\t|Error\r\n"); for (i = 0; i < procesos.lineasAsm; i++) { if (arregloLineas[i].matches("^\\s*$")) continue; procesos.combinacion = validar.validarLinea(arregloLineas[i]); if (procesos.combinacion == 0) { linea = procesos.escribirError(arregloLineas[i].trim(), validar.mensaje, i + 1); archivo.escribirErr(linea); } else { linea = procesos.escribirLinea(arregloLineas[i].trim(), i + 1); archivo.escribirInst(linea); } if (procesos.codop.matches("^[eE][nN][dD]$")) { endCODOP = true; break; } } if (!endCODOP) { linea = procesos.escribirError("", "No se encontró el fin del archivo", 0); archivo.escribirErr(linea); } // Escribe el archivo inst en el cuadro de texto jtxtInst.setText(""); try { textoInst = archivo.leerArchivo(archivo.nombreArchivo + ".inst"); jtxtInst.setText(textoInst); } catch (IOException a) { } // Escribe el archivo err en el cuadro de texto jtxtErr.setText(""); try { textoErr = archivo.leerArchivo(archivo.nombreArchivo + ".err"); jtxtErr.setText(textoErr); } catch (IOException a) { } } else { JOptionPane.showMessageDialog(null, "Primero carga el archivo asm"); } } }