java--第15周实验--任务1--.文件读写

Test类:


/* (程序头部注释开始)   
 * 程序的版权和版本声明部分   
 * Copyright (c) 2011, 烟台大学计算机学院学生    
 * All rights reserved.   
 * 文件名称:编写多线程程序。
 * 作 者: 雷恒鑫    
 * 完成日期: 2012 年 12 月 13日   
 * 版 本 号: V1.0    
 * 对任务及求解方法的描述部分   
 * 输入描述:文件读写
 
 * 问题描述:   
 * 程序输出:   
 * 程序头部的注释结束   
 */
public class Example10_9 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		FileWindows win = new FileWindows();
	}

}



FileWindows类:

import java.awt.BorderLayout;
import java.awt.FileDialog;
import java.awt.event.*;

import javax.swing.*;

import java.io.*;


public class FileWindows extends JFrame implements ActionListener{
	JFileChooser fileDialog_save,fileDialog_load;// 声明两个文件对话框
	JMenuBar menubar;
	JMenu menu;
	JMenuItem itemOpen ,itemSave;
	JTextArea text;
	BufferedReader in;
	FileReader file_reader;
	BufferedWriter out;
	FileWriter tofile;
	public FileWindows() {
		super("带文件对话框的窗口");
		setSize(260,270);
		setVisible(true);
		menubar = new JMenuBar();
		menu = new JMenu("选项");
		itemOpen = new JMenuItem("打开文件");
		itemSave = new JMenuItem("保存文件");
		itemOpen.addActionListener(this);
		itemSave.addActionListener(this);
		menu.add(itemOpen);
		menu.add(itemSave);
		menubar.add(menu);
		setJMenuBar(menubar);
		fileDialog_save = new JFileChooser();
		fileDialog_load = new JFileChooser();
		text = new JTextArea(10, 10);
		add(text,BorderLayout.CENTER);
	}
	public void actionPerformed(ActionEvent e) {
		if(e.getSource()==itemOpen)
		{
			fileDialog_load.setVisible(true);
			text.setText(null);
			String s;
			int state = fileDialog_load.showOpenDialog(null);
			if(state ==JFileChooser.APPROVE_OPTION)
			{
				try {
					File file = fileDialog_load.getSelectedFile();
					file_reader = new FileReader(file);
					in = new BufferedReader(file_reader);
					while ((s=in.readLine())!=null) {
						text.append(s+'\n');
						in.close();
						file_reader.close();
						
					}
				} catch (IOException e2) {}
			}
		}
		else if(e.getSource()==itemSave)
		{
			int state = fileDialog_save.showSaveDialog(null);
			fileDialog_save.setVisible(true);
			if(state ==JFileChooser.APPROVE_OPTION)
			{
				try {
					File file = fileDialog_save.getSelectedFile();
					tofile = new FileWriter(file);
					out = new BufferedWriter(tofile);
					out.write(text.getText(), 0, (text.getText()).length());
					out.close();
					tofile.close();
						
				} catch (IOException e2) {
					// TODO: handle exception
				}
			}
		}
		
	}

}


运行结果:


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

leihengxin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值