Java - ayuda con File

 
Vista:

ayuda con File

Publicado por erik iva (1 intervención) el 17/04/2010 01:44:11
gracias por aender a mi problema
el cdigo que estoy desarrolando es
import java.io.*;
import java.io.FileInputStream.*;
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
import java.lang.NullPointerException.*;
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

/**
*
* @author MIXRAR
*/
public class tarea15042010 {
static tarea15042010 metodico=new tarea15042010();
static JFrame frame;
static Container contenedor;
static ImageIcon img;
static String aqui="C:/Users/MIXRAR/Documents/NetBeansProjects/Tarea/imagenes/",al;
static File file=new File(aqui);
static String[] imagenes= file.list();
static JPanel panel1;
static int archivos,i=0;
static JButton b1,b2,b3;
static JLabel label1,label2;
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
frame=new JFrame("Tarea 15/04/2010");
frame.setDefaultCloseOperation(frame.EXIT_ON_CLOSE);
frame.setPreferredSize(new Dimension(500,400));
frame.setVisible(true);
contenedor=new Container();
contenedor.setPreferredSize(new Dimension(500,400));
contenedor.setLayout(new BorderLayout());
archivos=imagenes.length;
label1=new JLabel();
label1.setPreferredSize(new Dimension(200,200));
panel1=new JPanel();
img=new ImageIcon(al);
b1=new JButton("Siguiente");
b1.setVisible(true);
b1.setPreferredSize(new Dimension(100,25));
b1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent Q)
{

metodico.boton1();
}
});
b2=new JButton("Retroceder");
b2.setPreferredSize(new Dimension(100,25));
b2.setVisible(true);
b2.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent Q)
{
metodico.boton2();
}
});
b3=new JButton("Salir");
b3.setPreferredSize(new Dimension(100,25));
b3.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent Q)
{
System.exit(0);
}
});

label2=new JLabel(imagenes[i]);
contenedor.add(label2,BorderLayout.NORTH);
contenedor.add(panel1,BorderLayout.CENTER);
contenedor.add(b1,BorderLayout.EAST);
contenedor.add(b2,BorderLayout.WEST);
contenedor.add(b3,BorderLayout.SOUTH);
frame.add(contenedor);
frame.pack();

// TODO code application logic here
}

public void boton1()
{
if(i==archivos-1)
{
i=0;
}
else
{
i++;
}
al=file+imagenes[i];
img=new ImageIcon(al);
label1.setIcon(img);
}

public void boton2()
{
if(i==0)
{
i=archivos-1;
}
else
{
i--;
}
al=file+imagenes[i];
img=new ImageIcon(al);
label1.setIcon(img);

}
el problema es que me dice que hay un error
el cual es:
Uncaught error fetching image:
java.lang.NullPointerException
at java.io.FileInputStream.<init>(FileInputStream.java:103)
at java.io.FileInputStream.<init>(FileInputStream.java:66)
at sun.awt.image.FileImageSource.getDecoder(FileImageSource.java:35)
at sun.awt.image.InputStreamImageSource.doFetch(InputStreamImageSource.java:240)
at sun.awt.image.ImageFetcher.fetchloop(ImageFetcher.java:172)
at sun.awt.image.ImageFetcher.run(ImageFetcher.java:136)
no se como acerle porfavor espero me puedan ayudar
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:ayuda con File

Publicado por riveiras (33 intervenciones) el 18/04/2010 11:59:11
Comprueba bien la rutaa de la imagen ya que este tipo de error suele ser por la ruta,a simple vista
aqui="C:/Users/MIXRAR/Documents/NetBeansProjects/Tarea/imagenes/",al;

Me parece q sobra ,al

Yo para indicar la ruta del fichero

File directorio=new File(getServlet().getServletContext().getRealPath("/")+"uploadImagenes\pat\"+idPat);

De esta manera la ruta que indico es
E:\PROX\Proyecto\build\web\uploadImagenes\pat\31

Esta forma de indicar las rutas hace que no dependa del nombre o ubicación del proyecto.

espero q te sirva de algo.saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar