Я написал программу для изменения размера изображения для друга, который, кажется, работает, если я скомпилирую его с помощью eclipse, он просто изменяет размеры всех изображений, в которых выполняется программа, и создает там новый каталог сохраняет новые масштабированные изображения в папке.Jar, предоставляющий null-указатель exception java-программа
Но когда я экспортировать его в Java я получаю исключения нулевого указателя линии, что указывает на
" for (File file : allSubFiles) {"
помощь pelase
public class Sample {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
String a = (Sample.class.getProtectionDomain().getCodeSource().getLocation().getPath());
File dir = new File(a+"resized");
dir.mkdir();
System.out.println(a);
File tempfile = new File(a);
File[] allSubFiles=tempfile.listFiles();
for (File file : allSubFiles) {
if(file.isDirectory())
{
}
else
{
String temp = file.getAbsolutePath();
String substr = temp.substring(temp.length() - 3);
//System.out.println(substr);
if(substr.equals("png") || substr.equals("gif") || substr.equals("jpg") || substr.equals("bmp"))
{
//System.out.println(file.getAbsolutePath()+" is file");
BufferedImage bufimage = ImageIO.read(file);
BufferedImage newImage = new BufferedImage(90, 90, BufferedImage.TYPE_INT_RGB);
Graphics g = newImage.createGraphics();
g.drawImage(bufimage, 0, 0, 90, 90, null);
g.dispose();
File outputfile = new File(a+"resized/"+file.getName());
ImageIO.write(newImage, "png", outputfile);
}
}
}
}
}
Ну, что же вы отлаживаете? –