Caros estou desenvolvendo uma interface gráfica para uma software desenvolvido em fortran, estou fazendo isso atráves de leitura e escrita de arquivos texto, já que ele já é o seu principio de funcionamento.
Mais estou tento problemas na hora de ler esses arquivo.
Tipo estou usando o BufferedReader para percorrer esse arquivo, o problema está que se eu crio o arquivo com
public ArrayList pontosArray() throws IOException {
BufferedReader in = new BufferedReader(new FileReader("/home/raphael/Develop/Java/IOGraf/Dados.txt"));
Funciona perfeitamente mais se eu uso
public ArrayList pontosArray(String filename) throws IOException {
BufferedReader in = new BufferedReader(new FileReader(filename));
me apresenta os seguintes erros
[color=red]Exception in thread “AWT-EventQueue-0” java.lang.NullPointerException[/color]
at java.util.StringTokenizer.(StringTokenizer.java:182)
at java.util.StringTokenizer.(StringTokenizer.java:204)
at iograf.leArquivo.pontosArray(leArquivo.java:138)
at iograf.NewApplication.jButton1ActionPerformed(NewApplication.java:151)
at iograf.NewApplication.access$000(NewApplication.java:18)
at iograf.NewApplication$1.actionPerformed(NewApplication.java:64)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:234)
at java.awt.Component.processMouseEvent(Component.java:5488 )
at javax.swing.JComponent.processMouseEvent(JComponent.java:3126 )
at java.awt.Component.processEvent(Component.java:5253)
at java.awt.Container.processEvent(Container.java:1966)
at java.awt.Component.dispatchEventImpl(Component.java:3955)
at java.awt.Container.dispatchEventImpl(Container.java:2024)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
at java.awt.Container.dispatchEventImpl(Container.java:2010)
at java.awt.Window.dispatchEventImpl(Window.java:1774)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
Segue a baixo codigo total dessa minha classe
import java.io.*;
import java.util.*;
import javax.swing.*;
public class leArquivo extends JFrame {
/** Creates a new instance of learquivo */
private ObjectInputStream input;
private File filename;
public leArquivo() {
}
/**
*[b] TESTE[/b]
*Le um arquivo de separa as colunas separadas
*por TAB cria os Objetos PONTO
*Poem num ArrayList e envia
*/
public ArrayList pontosArray() throws IOException {
BufferedReader in = new BufferedReader(new FileReader("/home/raphael/Develop/Java/IOGraf/Dados.txt"));
String linha;
StringTokenizer st=null;
Ponto p;
ArrayList lista= new ArrayList();
while ((linha=in.readLine())!= null) {
//Separa a String em Tokens pelo argumento passado
st=new StringTokenizer(linha,"\t");
p = new Ponto(Integer.parseInt(st.nextToken()), Integer.parseInt(st.nextToken()));
lista.add(p);
}
in.close();
return lista;
}
/**
*
*Le um arquivo indicado no parametro de separa as colunas separadas
*por TAB cria os Objetos PONTO
*Poem num ArrayList e envia
*/
public ArrayList pontosArray(String filename) throws IOException {
BufferedReader in = new BufferedReader(new FileReader(filename));
String linha;
StringTokenizer st=null;
Ponto p;
ArrayList lista= new ArrayList();
while ((linha=in.readLine())!= null) {
linha=in.readLine();
//Separa a String em Tokens pelo argumento passado
st=new StringTokenizer(linha,"\t");
p = new Ponto(Integer.parseInt(st.nextToken()), Integer.parseInt(st.nextToken()));
lista.add(p);
}
in.close();
return lista;
}
public ArrayList pontosArray(File filename) throws IOException {
BufferedReader in = new BufferedReader(new FileReader(filename),1*1024);
String linha;
StringTokenizer st=null;
Ponto p;
ArrayList lista= new ArrayList();
while ((linha=in.readLine())!= null) {
linha=in.readLine();
//Separa a String em Tokens pelo argumento passado
st=new StringTokenizer(linha,"\t");
p = new Ponto(Integer.parseInt(st.nextToken()), Integer.parseInt(st.nextToken()));
lista.add(p);
}
in.close();
return lista;
}
}


