Principal
public class LectorTexto {
static boolean res_com=false;
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
archivo a=new archivo();
compilar co=new compilar();
Integer linea=0;
String p=a.leerGrafico();
Integer nu=a.contarlineas(p);
while(linea
res_com=co.compilar(l);
if(res_com!=true){
System.out.println("Error de sintaxis en la linea "+linea);
}
linea++;
}
}
}
Particionamiento del Archivo
import java.io.*;
import javax.swing.JFileChooser;
import javax.swing.JOptionPane;
import javax.swing.filechooser.FileNameExtensionFilter;
public class archivo {
File f;
FileReader lectorArchivo;
public String leerGrafico()
{
JFileChooser j= new JFileChooser();
File f1=new File("C:\\Users\\usuario\\Desktop");
j.setCurrentDirectory(f1);
FileNameExtensionFilter filter = new FileNameExtensionFilter(".txt","txt");
j.setFileFilter(filter);
j.showOpenDialog(j);
String path= j.getSelectedFile().getAbsolutePath();
String lectura="";
f = new File(path);
try{
FileReader fr = new FileReader(f);
BufferedReader br = new BufferedReader(fr);
String aux;
while((aux = br.readLine())!=null) {
lectura = lectura+aux+"\n";
}
}catch(IOException e){}
return lectura;
}
public Integer contarlineas (String cadena){
int x=0,num=0;
while(x
if(cadena.charAt(x)=='\n'){
num++;
}
x++;
}
return num;
}
public String leerLinea(Integer lin, String cadena){
Integer a;
String linea="";
for(int i=0;i<=lin;i++){
a=cadena.indexOf("\n");
linea=cadena.substring(0, a);
cadena=cadena.substring(a+1, cadena.length());
}
return linea;
}
public String palabras(String cadena, int pal){
if(pal==0)
{
cadena=cadena.substring(0,cadena.indexOf(" "));
}
else
{
cadena=cadena.substring(cadena.indexOf(" ")+1,cadena.length());
}
return cadena;
}
}
Compilar (preliminar)
public class compilar {
public boolean compilar(String l){
String pal="",par="";
archivo p=new archivo();
if(l.equals("inicio")){
return true;
}
if(l.equals("fin")){
return true;
}
pal=p.palabras(l,0);
if(pal.equals("escribir")){
par=p.palabras(l, 1);
System.out.println(par);
return true;
}
return false;
}
}