java实验文件读写_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

}

}

}

}

}

运行结果:

0818b9ca8b590ca3270a3433284dd417.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值