java中swing上傳圖片讀取顯示
阿新 • • 發佈:2019-01-30
public static void eventOnImport(JButton upload) {
ByteArrayOutputStream baos = null;
JFileChooser chooser = new JFileChooser();
chooser.setMultiSelectionEnabled(true);
/** 過濾檔案型別 * */
FileNameExtensionFilter filter = new FileNameExtensionFilter("請選擇上傳圖片",
"jpg","png","jpeg","bmp");
chooser.setFileFilter(filter);
int returnVal = chooser.showOpenDialog(upload);
if (returnVal == JFileChooser.APPROVE_OPTION) {
/** 得到選擇的檔案* */
File[] arrfiles = chooser.getSelectedFiles();
if (arrfiles == null || arrfiles.length == 0) {
return;
}
FileInputStream input = null;
FileOutputStream out = null;
String path = "images/";
try {
for (File f : arrfiles) {
File dir = new File(path);
dir.listFiles();
fileNamnPath = path+f.getName();
new URL(fileNamnPath);
input = new FileInputStream(f);
byte[] buffer = new byte[1024];
File des = new File(path, f.getName());
out = new FileOutputStream(des);
int len = 0;
baos = new ByteArrayOutputStream();
while (-1 != (len = input.read(buffer))) {
baos.write(buffer);
out.write(buffer, 0, len);
}
ImageIcon IC = new ImageIcon(baos.toByteArray());
IC.setImage(IC.getImage().getScaledInstance(200, 200, Image.SCALE_DEFAULT));
showPic.setIcon(IC);
out.close();
input.close();
}
} catch (FileNotFoundException e1) {
JOptionPane.showMessageDialog(null, "上傳失敗!", "提示",
JOptionPane.ERROR_MESSAGE);
e1.printStackTrace();
} catch (IOException e1) {
JOptionPane.showMessageDialog(null, "上傳失敗!", "提示",
JOptionPane.ERROR_MESSAGE);
e1.printStackTrace();
}
}
}
ByteArrayOutputStream baos = null;
JFileChooser chooser = new JFileChooser();
chooser.setMultiSelectionEnabled(true);
/** 過濾檔案型別 * */
FileNameExtensionFilter filter = new FileNameExtensionFilter("請選擇上傳圖片",
"jpg","png","jpeg","bmp");
chooser.setFileFilter(filter);
int returnVal = chooser.showOpenDialog(upload);
if (returnVal == JFileChooser.APPROVE_OPTION) {
/** 得到選擇的檔案* */
File[] arrfiles = chooser.getSelectedFiles();
if (arrfiles == null || arrfiles.length == 0) {
return;
}
FileInputStream input = null;
FileOutputStream out = null;
String path = "images/";
try {
for (File f : arrfiles) {
File dir = new File(path);
dir.listFiles();
fileNamnPath = path+f.getName();
new URL(fileNamnPath);
input = new FileInputStream(f);
byte[] buffer = new byte[1024];
File des = new File(path, f.getName());
out = new FileOutputStream(des);
int len = 0;
baos = new ByteArrayOutputStream();
while (-1 != (len = input.read(buffer))) {
baos.write(buffer);
out.write(buffer, 0, len);
}
ImageIcon IC = new ImageIcon(baos.toByteArray());
IC.setImage(IC.getImage().getScaledInstance(200, 200, Image.SCALE_DEFAULT));
showPic.setIcon(IC);
out.close();
input.close();
}
} catch (FileNotFoundException e1) {
JOptionPane.showMessageDialog(null, "上傳失敗!", "提示",
JOptionPane.ERROR_MESSAGE);
e1.printStackTrace();
} catch (IOException e1) {
JOptionPane.showMessageDialog(null, "上傳失敗!", "提示",
JOptionPane.ERROR_MESSAGE);
e1.printStackTrace();
}
}
}