📄 ch8_e8_25.java
字号:
import java.awt.*;
import java.awt.event.*;
import java.io.*;
public class ch8_e8_25
{
public static void main(String args[])
{
new GetDataStoreInFileFrame();
}
}
class GetDataStoreInFileFrame extends Frame implements ActionListener
{
final int NUMBER = 5;
final String DOUBLE_INPUT_PROMPT_PREFIX = " 请输入第";
final String DOUBLE_INPUT_PROMPT_SUFFIX = "个浮点数:";
final String FILE_NAME_INPUT_PROMPT = "请输入保存数据的文件名:";
double dataArray[] = new double[NUMBER];
TextField inputTfd = new TextField(10);
Label promptLbl = new Label(FILE_NAME_INPUT_PROMPT);
int inputedData = 0;
GetDataStoreInFileFrame()
{
super("输入数据");
promptLbl.setText(DOUBLE_INPUT_PROMPT_PREFIX
+ "1" + DOUBLE_INPUT_PROMPT_SUFFIX);
inputTfd.addActionListener(this);
setLayout(new FlowLayout());
add(promptLbl);
add(inputTfd);
addWindowListener(new winClose());
setSize(300,200);
setVisible(true);
}
public void actionPerformed(ActionEvent ae)
{
try
{
if(ae.getSource() == inputTfd)
{
if(inputedData < NUMBER)
{
dataArray[inputedData] = Double.parseDouble(
inputTfd.getText());
inputTfd.setText("");
if(inputedData != NUMBER-1)
promptLbl.setText(DOUBLE_INPUT_PROMPT_PREFIX
+ (inputedData+2) + DOUBLE_INPUT_PROMPT_SUFFIX);
else
{
promptLbl.setText(FILE_NAME_INPUT_PROMPT);
inputTfd.setVisible(false);
FileDialog fdialog = new FileDialog(this,"打开文件",
FileDialog.LOAD);
fdialog.setDirectory("C:\\temp");
fdialog.show();
File dataFile = new File(fdialog.getDirectory(),
fdialog.getFile());
RandomAccessFile raf = new RandomAccessFile(dataFile,"rw");
for(int i=0; i<NUMBER; i++)
{
raf.writeDouble(dataArray[i]);
}
//验证
raf.seek(0);
while(raf.getFilePointer()<raf.length())
{
System.out.println(raf.readDouble() + "\t");
}
raf.close();
inputTfd.setEnabled(false);
promptLbl.setText("数据已经保存在文件中");
}
inputedData++;
}
}
}
catch(NumberFormatException nfe)
{
}
catch(IOException ioe)
{
}
}
}
class winClose extends WindowAdapter
{
public void windowClosing(WindowEvent we)
{
we.getWindow().dispose();
System.exit(0);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -