java中窗口事件代码 java 窗口

JAVA怎么做点击按钮促发事件弹出浏览窗口选择excel文件读取,并显示到另外一个界面上,请给出主要代码package com.excel;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import javax.swing.JTextArea;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFDateUtil;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
/**
* 解析Excel的类
*/
public class ExcelOperate {
private JTextArea area;
private String fileName;
/**
* 构造方法传值
*
* @param area
*显示Excel内容的位置
* @param fileName
*Excel文件名
*/
public ExcelOperate(JTextArea area, String fileName) {
this.area = area;
this.fileName = fileName;
}
/**
* 解析Excel文件
*/
public void parseExcel() {
File file = new File(fileName);
String[][] result = null;
try {
result = getData(file, 1);
} catch (IOException e) {
e.printStackTrace();
}
int rowLength = result.length;
for (int i = 0; irowLength; i++) {
for (int j = 0; jresult[i].length; j++) {
area.append(result[i][j] + "\t\t");
}
area.append("\n");
}
}
/**
* 读取Excel的内容,第一维数组存储的是一行中格列的值,二维数组存储的是多少个行
*
* @param file
*读取数据的源Excel
* @param ignoreRows
*读取数据忽略的行数,比喻行头不需要读入 忽略的行数为1
* @return 读出的Excel中数据的内容
* @throws FileNotFoundException
* @throws IOException
*/
public static String[][] getData(File file, int ignoreRows)
throws FileNotFoundException, IOException {
ListString[] result = new ArrayListString[]();
int rowSize = 0;
BufferedInputStream in = new BufferedInputStream(new FileInputStream(
file));
// 打开HSSFWorkbook
POIFSFileSystem fs = new POIFSFileSystem(in);
HSSFWorkbook wb = new HSSFWorkbook(fs);
HSSFCell cell = null;
for (int sheetIndex = 0; sheetIndexwb.getNumberOfSheets(); sheetIndex++) {
HSSFSheet st = wb.getSheetAt(sheetIndex);
// 第一行为标题,不取
for (int rowIndex = ignoreRows; rowIndex = st.getLastRowNum(); rowIndex++) {
HSSFRow row = st.getRow(rowIndex);
if (row == null) {
continue;
}
int tempRowSize = row.getLastCellNum() + 1;
if (tempRowSizerowSize) {
rowSize = tempRowSize;
}
String[] values = new String[rowSize];
Arrays.fill(values, "");
boolean hasValue = https://www.04ip.com/post/false;
for (short columnIndex = 0; columnIndex = row.getLastCellNum(); columnIndex++) {
String valuehttps://www.04ip.com/post/= "";
cell = row.getCell(columnIndex);
if (cell != null) {
switch (cell.getCellType()) {
case HSSFCell.CELL_TYPE_STRING:
value = https://www.04ip.com/post/cell.getStringCellValue();
break;
case HSSFCell.CELL_TYPE_NUMERIC:
if (HSSFDateUtil.isCellDateFormatted(cell)) {
Date date = cell.getDateCellValue();
if (date != null) {
value = https://www.04ip.com/post/new SimpleDateFormat("yyyy-MM-dd")
.format(date);
} else {
valuehttps://www.04ip.com/post/= "";
}
} else {
value = https://www.04ip.com/post/new DecimalFormat("0").format(cell

推荐阅读