savestringtofile.java

来自「Java程序设计实验与实训源代码经典的JAVA学习教材」· Java 代码 · 共 78 行

JAVA
78
字号
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.event.*;
import java.io.*;


class SaveStringToFile{
	public static void main(String[] args) {
		if(args.length<1){
			System.out.println("请输入文件名作为命令行参数");
			System.exit(1);
		}
		MyFrameEight myFrame=new MyFrameEight(args[0]);
		myFrame.show();
	}
}

class MyFrameEight extends JFrame implements ActionListener{
	private JButton mybt;
	private JTextField mytf;
	private BufferedWriter mypw;
	private String myf;
	
	MyFrameEight(String s){
		mybt=new JButton("关闭");
		mytf=new JTextField("",20);
		mybt.addActionListener(this);
		mytf.addActionListener(this);
		myf=s;
		
		Container myContentPane=getContentPane();
		myContentPane.setLayout(new FlowLayout());
		myContentPane.add(mytf);
		myContentPane.add(mybt);
		
		setTitle("向文件"+s+"中添加输入字符串");
		setSize(300,100);
		addWindowListener(new QuitWindow());
		
		try{
			mypw=new BufferedWriter(new FileWriter(myf));
		}catch(IOException e){
			System.err.println("无法打开文件"+myf);
			System.exit(1);
		}
	}
	
	public void actionPerformed(ActionEvent e){
		if(e.getSource()==mytf){
			try{
				mypw.write(mytf.getText(),0,mytf.getText().length());
				mypw.newLine();
			}catch(IOException err){
				System.err.println("文件"+myf+"写错误");
			}
			mytf.setText("");
		}
		else if(e.getSource()==mybt){
			try{
				mypw.close();
			}catch(IOException ioe){
				System.err.println("文件"+myf+"无法关闭");
				dispose();
				System.exit(1);
			}
			dispose();
			System.exit(1);
		}
	}
}


class QuitWindow extends WindowAdapter{
	public void windowClosing(WindowEvent e){
		System.exit(0);
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?