почему я получаю такую ​​ошибку nullpointerexception? - PullRequest
0 голосов
/ 11 февраля 2020

Я хочу, чтобы, если я нажал '1', '2' '3' '4' '5', загружается img, img2, img3 img4 img5. но когда я запустил этот код, у меня появилось сообщение об ошибке «nullpointerexception» и «файл« e, jpg »отсутствует или недоступен, убедитесь, что URL-адрес действителен или что файл добавлен в ваш эскиз и доступен для чтения». но я делаю папку и называю «данные». Затем я сделал фотографию в папке «data» и назвал ее «ejpg». Я не могу понять, почему у меня есть ошибка. как я могу решить это. Код ниже - то, что я сделал.

PFont myFont;
PImage img, img2, img3, img4, img5;

void setup(){
 size(500, 500);

  img = loadImage("a,jpg");
  img2 = loadImage("b,jpg");
  img3 = loadImage("c,jpg");
  img4 = loadImage("d,jpg");
  img5 = loadImage("e,jpg");
}
void draw(){

 if(keyPressed == true){
   if(key == '1'){

     image(img, 0, 0, width, height);
   }
   else if(key == '2'){

     image(img2, 0, 0, width, height);
   }
   else if(key == '3'){

     image(img3, 0, 0, width, height);
   }
   else if(key == '4'){

     image(img4, 0, 0, width, height);
   }
   else if(key == '5'){

     image(img5, 0, 0, width, height);
   }
 }

}

Ответы [ 2 ]

3 голосов
/ 11 февраля 2020

Вы поставили запятые перед расширениями файлов ",jpg", поэтому файлы не могут быть загружены, а функция loadImage(String) возвращает null. Это должны быть точки: a.jpg, b.jpg, ...

Если у вас нет другого способа присвоения имен файлам, тогда вам просто нужно убедиться, что пути соответствуют фактическим именам файлов.

0 голосов
/ 13 февраля 2020

Это простая проблема именования. Если вы назвали файлы "a", "b", "c" et c, то вам следует обращаться к ним как "a.jpg", "b.jpg", "c.jpg" и так далее. Обратите внимание на использование точек остановки / точек, а не запятых - если вы ошиблись, файлы не будут загружаться.

Если вы буквально назвали изображение "ajpg", вам придется обратиться к нему. as "ajpg.jpg".

Еще одна вещь, на которую следует обратить внимание, это убедиться, что вы используете правильное расширение файла. Например, дважды проверьте, что изображения на самом деле .jpg, а не .png файлы. Удивительно, как легко это может сбить вас с толку.

...