⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 marks.java

📁 java练习程序
💻 JAVA
字号:
import java.awt.*;
import java.io.*;
import java.awt.event.*;
public class Marks
{
	public static void main(String args[])
	{
		Frame_FileDialog20_13 f=new Frame_FileDialog20_13();
		f.pack();
	}
}

class  Frame_FileDialog20_13 extends Frame implements ActionListener
{
	FileDialog filedialog_save, filedialog_load;//声明2个文件对话框
	MenuBar menubar;Menu menu;MenuItem item1, item2;
	FileInputStream file_read=null;
	FileOutputStream tofile=null;
	DataInputStream in_data=null;
	DataOutputStream out_data=null;
	TextField 姓名[]=new TextField[30], 成绩[]=new TextField[30];
	Label label=new Label();
	Frame_FileDialog20_13()
	{
		super( "学生成绩录入");
		setBounds(100, 120, 100, 100);
		setVisible(true);
		menubar=new MenuBar();
		menu=new Menu("文件");
		item1=new MenuItem( "打开文件");
		item2=new MenuItem( "保存文件");
		item1.addActionListener(this);
		item2.addActionListener(this);
		menu.add(item1);
		menu.add(item2);
		menubar.add(menu);
		setMenuBar(menubar);
		//下面创建1个依赖于该窗口的保存成绩单对话框
		filedialog_save=new FileDialog(this, "保存成绩单对话框", FileDialog.SAVE);
		filedialog_save.setVisible(false);
		//再创建1个依赖于该窗口的打开成绩单对话框
		filedialog_load=new FileDialog(this, "打开成绩对话框", FileDialog.LOAD);
		filedialog_load.setVisible(false);
		filedialog_save.addWindowListener(new WindowAdapter()//对话框增加适配器
		{
			public void windowClosing(WindowEvent e)
			{
				filedialog_save.setVisible(false);
			}
			
		});
		filedialog_load.addWindowListener(new WindowAdapter()//对话框增加适配器
		{
			public void windewClosing(WindowEvent e)
			{
				filedialog_load.setVisible(false);
			}
		});
		addWindowListener(new WindowAdapter()  //窗口增加适配器
		{
			public void windowClosing(WindowEvent e)
			{
				setVisible(false);System.exit(0);
			}
		});
		
		Panel p=new Panel();
		p.setLayout(new GridLayout(30, 2));
		for(int i=0;i<=29;i++)
		{
			姓名[i]=new TextField("姓名");
			成绩[i]=new TextField("0");
			姓名[i].setBackground(Color.cyan);
			p.add(姓名[i]);
			p.add(成绩[i]);
		}
		ScrollPane scroll=new ScrollPane();
		scroll.add(p);
		add("Center", scroll);
		add(new Label("成绩录入表在左面输入姓名  在右面输入分数"), "North");
		add(label,"South");
	}
	
	public void actionPerformed(ActionEvent e) //实现接口中的方法,打开或保存一个成绩单。
	{
		if(e.getSource()==item1)
		{
			filedialog_load.setVisible(true);
			String s;
			try
			{
				File file=new File(filedialog_load.getDirectory(), filedialog_load.getFile());
				file_read=new FileInputStream(file);
				in_data=new DataInputStream(file_read); //使用数据流
				label.setText(filedialog_load.getDirectory().toString()+filedialog_load.getFile().toString());
				int i=0;
				while((s=in_data.readUTF())!=null)
				{
					姓名[i].setText(s);
					成绩[i].setText("    "+in_data.readDouble());
					i++;
				}
			}
			catch(FileNotFoundException el){}
			catch(IOException e2){}
			try
			{
				in_data.close(); file_read.close();
			}
			catch(IOException exp){}
		}
		else if(e.getSource()==item2)
		{
			filedialog_save.setVisible(true);
			try
			{
				File file=new File(filedialog_save.getDirectory(), filedialog_save.getFile());
				tofile=new FileOutputStream(file);
				out_data=new DataOutputStream(tofile);//使用数据流
				for(int i=0;i<=29;i++)
				{
					out_data.writeUTF(姓名[i].getText());
					out_data.writeDouble(Double.valueOf(成绩[i].getText()).doubleValue());
					
				}
			}
			catch(FileNotFoundException el){}
			catch(IOException e2){}
			try
			{
				out_data.close(); tofile.close();
			}
			catch(IOException exp)
			{}
		}
	}
}

⌨️ 快捷键说明

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