日期:2014-05-20  浏览次数:20723 次

求教各位,如何把我的这个计算器程序的计算结果用流输出到指定文件夹下的TXT文档
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Calculator extends JFrame {

 private Container container;
 private GridBagLayout layout;
 private GridBagConstraints constraints; 
 private JTextField displayField;//计算结果显示区
 private String lastCommand;//保存+,-,*,/,=命令
 private double result;//保存计算结果
 private boolean start;//判断是否为数字的开始

 public Calculator() {

  super("Calculator");
  container=getContentPane();
  layout=new GridBagLayout();
  container.setLayout(layout);
  constraints=new GridBagConstraints();
  start=true;
  result=0;
  lastCommand = "=";
  displayField=new JTextField(20);
  displayField.setHorizontalAlignment(JTextField.RIGHT);
  constraints.gridx=0;
  constraints.gridy=0;
  constraints.gridwidth=4;
  constraints.gridheight=1;
  constraints.fill=GridBagConstraints.BOTH;
  constraints.weightx=100;
  constraints.weighty=100;
  layout.setConstraints(displayField,constraints);
  container.add(displayField);
  ActionListener insert = new InsertAction();
  ActionListener command = new CommandAction();
  addButton("Backspace",0,1,2,1,insert);
  addButton("CE",2,1,1,1,insert);
  addButton("C",3,1,1,1,insert);
  addButton("7",0,2,1,1,insert);
  addButton("8",1,2,1,1,insert);
  addButton("9",2,2,1,1,insert);
  addButton("/",3,2,1,1,command);
  addButton("4",0,3,1,1,insert);
  addButton("5",1,3,1,1,insert);
  addButton("6",2,3,1,1,insert);
  addButton("*",3,3,1,1,command);
  addButton("1",0,4,1,1,insert);
  addButton("2",1,4,1,1,insert);
  addButton("3",2,4,1,1,insert);
  addButton("-",3,4,1,1,command);
  addButton("0",0,5,1,1,insert);
  addButton("+/-",1,5,1,1,insert);//只显示"-"号,"+"没有实用价值
  addButton(".",2,5,1,1,insert);
  addButton("+",3,5,1,1,command);
  addButton("=",0,6,4,1,command);
  setSize(300,300);
  setVisible(true);
  
 }


 private void addButton(String label,int row,int column,int with,int height,ActionListener listener) {

  JButton button=new JButton(label);
  constraints.gridx=row;
  constraints.gridy=column;
  constraints.gridwidth=with;
  constraints.gridheight=height;
  constraints.fill=GridBagConstraints.BOTH;
  button.addActionListener(listener);
  layout.setConstraints(button,constraints);
  container.add(button);
 }


 private class InsertAction implements ActionListener {

  public void actionPerformed(ActionEvent event) {

  String input=event.getActionCommand();
  if (start) {
  displayField.setText("");
  start=false;
  if(input.equals("+/-"))
  displayField.setText(displayField.getText()+"-"); 
  }
 
  if(!input.equals("+/-")) {
  if(input.equals("Backspace")) {
  String str=displayField.getText();
  if(str.length()>0)
  displayField.setText(str.substring(0,str.length()-1));
  }else if(input.equals("CE")||input.equals("C")) {
  displayField.setText("0");