изначально использовал jfilechooser для загрузки файлов jpg в проект, но переключился на jFileDialog, потому что я хотел получить изображения в виде эскизов.но когда я запускаю проект, я получаю сообщение об ошибке:
javax.imageio.IIOException:Cant read input file!
это код ниже:
FileDialog fd = new FileDialog(this,"Choose a File",FileDialog.LOAD);
fd.setDirectory("C:\\");
fd.setFile("*.jpg;*.jpeg");
fd.setVisible(true);
filename = fd.getFile();
if(filename==null){
}else{
try{
File imgs =new File(filename);
BufferedImage bufferedimage=ImageIO.read(imgs);
BufferedImage thumbnail=Thumbnails.of(bufferedimage)
.size(145, 141)
.asBufferedImage();
ByteArrayOutputStream os = new ByteArrayOutputStream();
ImageIO.write(thumbnail,"jpeg", os);
InputStream is=new ByteArrayInputStream(os.toByteArray());
ByteArrayOutputStream bos = new ByteArrayOutputStream();
byte[] buf =new byte[1024];
try{
for(int readNum; (readNum=is.read(buf))!=-1;){
bos.write(buf,0,readNum);
System.out.println("Read" +readNum+ "bytes,");
}
}catch(IOException ex){
Logger.getLogger(null);
}
person_image=bos.toByteArray();
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}finally{
try{
rs.close();
pst.close();
}
catch(Exception e){
}
}
Я думаю, что проблема исходит из этого раздела:
File imgs =new File(filename);
BufferedImage bufferedimage=ImageIO.read(imgs);
, похоже, файл не получен.пожалуйста, что я делаю не так?