博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
添加头像
阅读量:6578 次
发布时间:2019-06-24

本文共 2420 字,大约阅读时间需要 8 分钟。

import java.awt.Color;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

import javax.swing.BorderFactory;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;

public class NewFile extends JFrame{

  private JLabel jl = new JLabel();
  public NewFile(){
    this.setLayout(null);
    jl.setBounds(30, 30, 100, 150);
    jl.setBorder(BorderFactory.createLineBorder(Color.black));
    this.add(jl);
    JButton addButton = new JButton("添加头像");
    addButton.setBounds(30, 190, 100, 20);
    this.add(addButton);
    addButton.addActionListener(new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent arg0) {
        JFileChooser jfc = new JFileChooser();
        int index = jfc.showOpenDialog(null);
        if(index == 0){
          File f = jfc.getSelectedFile();
          Image img = new ImageIcon(f.getAbsolutePath()).getImage();
          img = img.getScaledInstance(100, 150, 10);
          jl.setIcon(new ImageIcon(img));
          File fs = new File("image");
            if(fs.exists()==false){
              fs.mkdir();
            }
          String fileName = System.currentTimeMillis()+f.getName().substring(f.getName().lastIndexOf("."));
          InputStream in = null;
          OutputStream out = null;
          try {
            in = new FileInputStream(f);
            out = new FileOutputStream("image/"+fileName);
            byte[] by = new byte[1024];
            int len = 0;
            while((len = in.read(by))!= -1){
              out.write(by, 0, len);
            }
          } catch (Exception e) {
            e.printStackTrace();
          }finally{
            try {
              out.close();
              in.close();
            } catch (IOException e) {
              e.printStackTrace();
            }
          }
        }
      }
     });
    this.setSize(400, 300);
    this.setVisible(true);
    this.setDefaultCloseOperation(3);
    this.setLocationRelativeTo(null);
  }
  public static void main(String[] args) {
    NewFile nf = new NewFile();
  }

}

转载于:https://www.cnblogs.com/tcc89/p/5402502.html

你可能感兴趣的文章
JQuery的ajaxFileUpload的使用
查看>>
关于Integer类中parseInt()和valueOf()方法的区别以及int和String类性的转换.以及String类valueOf()方法...
查看>>
ios 控制器的生命周期
查看>>
C#动态代理
查看>>
使用 sessionStorage 创建一个本地存储的 name/value
查看>>
Python笔记8----DataFrame(二维)
查看>>
JavaScript 特殊效果代码
查看>>
【?】codeforces721E Road to Home(DP+单调队列)
查看>>
MySQL 仅保留7天、一个月数据
查看>>
Win7下安装Mysql(解压缩版)
查看>>
UVA 11992 Fast Matrix Operations (降维)
查看>>
增加临时表空间组Oracle11g单实例
查看>>
Diff Two Arrays
查看>>
stark组件(1):动态生成URL
查看>>
169. Majority Element
查看>>
下拉菜单
查看>>
[清华集训2014]玛里苟斯
查看>>
Doctype作用?严格模式与混杂模式如何区分?它们有何意义
查看>>
【MVC+EasyUI实例】对数据网格的增删改查(上)
查看>>
第三章:如何建模服务
查看>>