天天看點

java實驗檔案讀寫_java--第15周實驗--任務1--.檔案讀寫

Test類:

public class Example10_9 {

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

}

}

}

}

}

運作結果:

java實驗檔案讀寫_java--第15周實驗--任務1--.檔案讀寫