java按钮选择文件代码 java弹出文件选择框

java代码问题求助,下面的代码是想要点击按钮后从本地选取文件,并将文件内容显示在文本区。大家帮忙看看

我编译时报了

为勉县等地区用户提供了全套网页设计制作服务,及勉县网站建设行业解决方案。主营业务为成都网站制作、网站设计、外贸网站建设、勉县网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

p185_6.java:50: 警告: catch 子句无法访问

catch(IOException e2){System.out.println("文件读写错");}

改正后文件可以在页面内显示,就是位置有点问题。

可以把add(jta,BorderLayout.SOUTH);改成add(jta,BorderLayout.CENTER);

如果想使用滚动条,可以把JTextArea放在JScrollPane里,然后再放在JFrame中。

add(jta,BorderLayout.SOUTH);改成add(new JScrollPane(jta),BorderLayout.CENTER);

如何在Java Swing中显示系统样式的文件选择框?类似JavaFX的FileChooser外观

完整的java代码如下:

import javax.swing.*;

import java.awt.event.*;

public class FileChooserDemo extends JFrame implements ActionListener {

// 创建一个按钮,用于打开文件选择框

private JButton openButton;

// 创建一个文件选择框对象

private JFileChooser fileChooser;

public FileChooserDemo() {

// 设置窗口标题和大小

super("文件选择框示例");

setSize(300, 200);

// 设置窗口布局为流式布局

setLayout(new FlowLayout());

// 初始化按钮,并添加动作监听器

openButton = new JButton("打开文件");

openButton.addActionListener(this);

// 初始化文件选择框,并设置为系统样式[^1^][2]

fileChooser = new JFileChooser();

fileChooser.setFileSelectionMode(JFileChooser.FILES_ONLY);

try {

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

SwingUtilities.updateComponentTreeUI(fileChooser);

} catch (Exception e) {

e.printStackTrace();

}

// 将按钮添加到窗口中

add(openButton);

// 设置窗口可见和关闭操作

setVisible(true);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

@Override

public void actionPerformed(ActionEvent e) {

if (e.getSource() == openButton) {

// 当点击打开文件按钮时,弹出文件选择框[^2^][1]

int result = fileChooser.showOpenDialog(this);

if (result == JFileChooser.APPROVE_OPTION) {

// 当用户选择了一个文件时,获取并显示文件路径

String filePath = fileChooser.getSelectedFile().getPath();

JOptionPane.showMessageDialog(this, "你选择了:" + filePath);

}

}

}

public static void main(String[] args) {

new FileChooserDemo();

}

}

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; i rowLength; i++) {

for (int j = 0; j result[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; sheetIndex wb.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 (tempRowSize rowSize) {

rowSize = tempRowSize;

}

String[] values = new String[rowSize];

Arrays.fill(values, "");

boolean hasValue = false;

for (short columnIndex = 0; columnIndex = row.getLastCellNum(); columnIndex++) {

String value = "";

cell = row.getCell(columnIndex);

if (cell != null) {

switch (cell.getCellType()) {

case HSSFCell.CELL_TYPE_STRING:

value = cell.getStringCellValue();

break;

case HSSFCell.CELL_TYPE_NUMERIC:

if (HSSFDateUtil.isCellDateFormatted(cell)) {

Date date = cell.getDateCellValue();

if (date != null) {

value = new SimpleDateFormat("yyyy-MM-dd")

.format(date);

} else {

value = "";

}

} else {

value = new DecimalFormat("0").format(cell

.getNumericCellValue());

}

break;

case HSSFCell.CELL_TYPE_FORMULA:

// 导入时如果为公式生成的数据则无值

if (!cell.getStringCellValue().equals("")) {

value = cell.getStringCellValue();

} else {

value = cell.getNumericCellValue() + "";

}

break;

case HSSFCell.CELL_TYPE_BLANK:

break;

case HSSFCell.CELL_TYPE_ERROR:

value = "";

break;

case HSSFCell.CELL_TYPE_BOOLEAN:

value = (cell.getBooleanCellValue() == true ? "Y"

: "N");

break;

default:

value = "";

}

}

if (columnIndex == 0 value.trim().equals("")) {

break;

}

values[columnIndex] = rightTrim(value);

hasValue = true;

}

if (hasValue) {

result.add(values);

}

}

}

in.close();

String[][] returnArray = new String[result.size()][rowSize];

for (int i = 0; i returnArray.length; i++) {

returnArray[i] = (String[]) result.get(i);

}

return returnArray;

}

/**

* 去掉字符串右边的空格

*

* @param str

* 要处理的字符串

* @return 处理后的字符串

*/

public static String rightTrim(String str) {

if (str == null) {

return "";

}

int length = str.length();

for (int i = length - 1; i = 0; i--) {

if (str.charAt(i) != 0x20) {

break;

}

length--;

}

return str.substring(0, length);

}

}

------------------------------------------------------------------------------------------

package com.excel;

import java.awt.BorderLayout;

import java.awt.Toolkit;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JFileChooser;

import javax.swing.JFrame;

import javax.swing.JScrollPane;

import javax.swing.JTextArea;

import javax.swing.UIManager;

import javax.swing.filechooser.FileNameExtensionFilter;

/**

* 主界面,按钮响应事件,文本域输出Excel内容

*/

public class OpenExcel extends JFrame implements ActionListener {

private JButton button;

private JScrollPane pane;

private JTextArea area;

public OpenExcel() {

super("解析Excel");

button = new JButton("点我选择Excel文件");

button.addActionListener(this);

area = new JTextArea();

pane = new JScrollPane(area);

this.add(button, BorderLayout.NORTH);

this.add(pane);

this.setSize(300, 300);

this.setLocationRelativeTo(null);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

}

// 按钮事件

public void actionPerformed(ActionEvent e) {

JFileChooser chooser = new JFileChooser();// 文件选择对话框

chooser.setAcceptAllFileFilterUsed(false);// 取消所有文件过滤项

chooser.setFileFilter(new FileNameExtensionFilter("Excel文件", "xls"));// 设置只过滤扩展名为.xls的Excel文件

int i = chooser.showOpenDialog(this);// 打开窗口

if (i == JFileChooser.APPROVE_OPTION) {

this.setLocation(0, 0);

this.setSize(Toolkit.getDefaultToolkit().getScreenSize());

new ExcelOperate(area, chooser.getSelectedFile().getAbsolutePath())

.parseExcel();

}

}

public static void main(String[] args) throws Exception {

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

new OpenExcel();

}

}

求java源代码。使用swing或AWT。实现功能:点击按钮,选择一个txt文本文件,并将txt中

搞定了

package com.monubia;

import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;

import java.io.BufferedReader;

import java.io.FileNotFoundException;

import java.io.FileReader;

import java.io.IOException;

import javax.swing.JButton;

import javax.swing.JDialog;

import javax.swing.JFileChooser;

import javax.swing.JTextArea;

import javax.swing.WindowConstants;

import javax.swing.SwingUtilities;

import javax.swing.filechooser.FileNameExtensionFilter;

/**

* This code was edited or generated using CloudGarden's Jigloo

* SWT/Swing GUI Builder, which is free for non-commercial

* use. If Jigloo is being used commercially (ie, by a corporation,

* company or business for any purpose whatever) then you

* should purchase a license for each developer using Jigloo.

* Please visit  for details.

* Use of Jigloo implies acceptance of these licensing terms.

* A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED FOR

* THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED

* LEGALLY FOR ANY CORPORATE OR COMMERCIAL PURPOSE.

*/

public class Txt extends javax.swing.JFrame {

private JButton jButton_open;

private JTextArea jTextArea1;

/**

* Auto-generated main method to display this JFrame

*/

public static void main(String[] args) {

SwingUtilities.invokeLater(new Runnable() {

public void run() {

Txt inst = new Txt();

inst.setLocationRelativeTo(null);

inst.setVisible(true);

}

});

}

public Txt() {

super();

initGUI();

}

private void initGUI() {

try {

setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);

getContentPane().setLayout(null);

{

jButton_open = new JButton();

getContentPane().add(jButton_open);

jButton_open.setText("Open");

jButton_open.setBounds(155, 114, 92, 49);

jButton_open.addMouseListener(new MouseAdapter() {

public void mouseClicked(MouseEvent evt) {

jButton_openMouseClicked(evt);

}

});

}

{

jTextArea1 = new JTextArea();

getContentPane().add(jTextArea1);

jTextArea1.setBounds(0, 0, 384, 262);

}

pack();

setSize(400, 300);

} catch (Exception e) {

//add your error handling code here

e.printStackTrace();

}

}

private void jButton_openMouseClicked(MouseEvent evt) {

//点击了打开

JFileChooser open=new JFileChooser();

FileNameExtensionFilter txt= new FileNameExtensionFilter("Txt File", "txt");

open.setFileFilter(txt);

int ret=open.showOpenDialog(this);

if(ret==JFileChooser.APPROVE_OPTION)

{

jButton_open.setOpaque(false);

jButton_open.setVisible(false);

System.out.println(open.getSelectedFile().getAbsolutePath());

try {

BufferedReader br=new BufferedReader(new FileReader(open.getSelectedFile().getAbsolutePath()));

String line=null;

while((line=br.readLine())!=null)

{

jTextArea1.append(line+"\n");

}

} catch (FileNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

}


分享标题:java按钮选择文件代码 java弹出文件选择框
当前链接:http://ybzwz.com/article/ddjgihs.html