您的位置:首页 > 编程语言

25---AWT和Swing(12)文件选择框(视频代码)

2012-03-19 11:25 344 查看
import java.io.File ;

import java.io.FileInputStream ;

import java.io.FileOutputStream ;

import java.io.PrintStream ;

import java.util.Scanner ;

import java.awt.BorderLayout ;

import java.awt.event.WindowAdapter ;

import java.awt.event.WindowEvent ;

import java.awt.event.ActionEvent ;

import java.awt.event.ActionListener ;

import javax.swing.JFrame ;

import javax.swing.JTextArea ;

import javax.swing.JLabel ;

import javax.swing.JButton ;

import javax.swing.JPanel ;

import javax.swing.JFileChooser ;

import javax.swing.JScrollPane ;

class Note implements ActionListener{

private JTextArea area = new JTextArea(8,10) ; // 定义文本区

private JFrame frame = new JFrame("Welcome To MLDN") ;

private JButton open = new JButton("打开文件") ;

private JButton save = new JButton("保存文件") ;

private JLabel label = new JLabel("现在没有打开的文件") ;

private JPanel butPan = new JPanel() ;

public Note(){

this.butPan.add(open) ; // 在面板中加入按钮

this.butPan.add(save) ; // 在面板中加入按钮

this.frame.setLayout(new BorderLayout(3,3)) ;

this.frame.add(this.label,BorderLayout.NORTH) ;

this.frame.add(this.butPan,BorderLayout.SOUTH) ;

this.frame.add(new JScrollPane(this.area),BorderLayout.CENTER) ;

this.frame.setSize(330,180) ;

this.frame.setVisible(true) ;

this.frame.addWindowListener(

new WindowAdapter() {

public void windowClosing(WindowEvent e){

System.exit(1) ;

}

}

) ;

this.open.addActionListener(this) ;

this.save.addActionListener(this) ;

}

public void actionPerformed(ActionEvent e){

File file = null ; // 接收文件

int result = 0 ; // 接收操作状态

JFileChooser fileChooser = new JFileChooser() ; // 文件选择框

if(e.getSource()==this.open){ // 表示执行的是打开操作

this.area.setText("") ; // 打开将文字区域的内容清空

fileChooser.setApproveButtonText("确定") ;

fileChooser.setDialogTitle("打开文件") ;

result = fileChooser.showOpenDialog(this.frame) ;

if(result==JFileChooser.APPROVE_OPTION){ // 选择的是确定按钮

file = fileChooser.getSelectedFile() ; // 得到选择的文件

this.label.setText("打开的文件名称为:" + file.getName()) ;

}else if(result==JFileChooser.CANCEL_OPTION){

this.label.setText("没有选择任何文件") ;

}else{

this.label.setText("操作出现错误") ;

}

if(file!=null){

try{

Scanner scan = new Scanner(new FileInputStream(file)) ;

scan.useDelimiter("\n") ;

while(scan.hasNext()){

this.area.append(scan.next()) ;

this.area.append("\n") ;

}

scan.close() ;

}catch(Exception e1){}

}

}

if(e.getSource()==this.save){ // 判断是否是保存操作

result = fileChooser.showSaveDialog(this.frame) ; // 显示保存框

if(result==JFileChooser.APPROVE_OPTION){ // 选择的是确定按钮

file = fileChooser.getSelectedFile() ; // 得到选择的文件

this.label.setText("选择的存储文件名称为:" + file.getName()) ;

}else if(result==JFileChooser.CANCEL_OPTION){

this.label.setText("没有选择任何文件") ;

}else{

this.label.setText("操作出现错误") ;

}

if(file!=null){

try{

PrintStream out = new PrintStream(new FileOutputStream(file)) ;

out.print(this.area.getText()) ;

out.close() ;

}catch(Exception e1){}

}

}

}

}

public class JFileChooserDemo{

public static void main(String args[]){

new Note() ;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐