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

📄 mailmessage.java

📁 Java程序设计技巧与开发实例附书源代码。
💻 JAVA
字号:

import java.io.*;
import java.net.*;
import java.awt.*;
import java.awt.event.*;

public class MailMessage
    extends Frame
    implements ActionListener
{
   private TextField sender = new TextField(" fxzhu@email.whu.edu.cn", 50);
   private TextField recipient = new TextField(50);
   private TextArea message = new TextArea(6, 50);
   private Button send = new Button("Send Message");
   private Button cancel = new Button("Cancel Message");
   private String host = null;
   private BufferedReader in = null;
   private PrintWriter out = null;
   public MailMessage(String _host)
   {
      super("Mail Message");
      host = _host;
      Panel labels = new Panel(new GridLayout(2, 1));
      labels.add(new Label("Sender: "));
      labels.add(new Label("Recipient: "));
      Panel fields = new Panel(new GridLayout(2, 1));
      fields.add(sender);
      fields.add(recipient);
      Panel head = new Panel(new BorderLayout());
      head.add("West", labels);
      head.add("Center", fields);
      Panel buttons = new Panel(new FlowLayout());
      buttons.add(send);
      buttons.add(cancel);
      setLayout(new BorderLayout());
      add("North", head);
      add("Center", message);
      add("South", buttons);
      send.addActionListener(this);
      cancel.addActionListener(this);
      validate();
      pack();
      show();
   }

   private void cancel()
   {
      System.exit(0);
   }

   private void sendWithAnswer(String msg) throws IOException
   {
      out.println(msg);
      out.flush();
      System.out.println("Server: " + in.readLine());
   }

   private void send()
   {
      try
      {
         Socket connection = new Socket(host, 25);
         in = new BufferedReader(new InputStreamReader(
             connection.getInputStream()));
         out = new PrintWriter(new OutputStreamWriter(
             connection.getOutputStream()));
         System.out.println("Server says: " + in.readLine());
         sendWithAnswer("HELO my.system.com");
         sendWithAnswer("MAIL FROM:<" + sender.getText().trim() + ">");
         sendWithAnswer("RCPT TO:<" + recipient.getText().trim() + ">");
         sendWithAnswer("DATA");
         out.println(message.getText());
         out.println(".");
         System.out.println("Server says: " + in.readLine());
         in.close();
         out.close();
         connection.close();
         System.out.println("Message sent. Quitting.");
      }
      catch (UnknownHostException uhe)
      {
         System.err.println("Unknown host: " + uhe);
      }
      catch (IOException ioe)
      {
         System.err.println("Error: " + ioe);
      }
      finally
      {
         System.exit(0);
      }
   }

   public void actionPerformed(ActionEvent ae)
   {
      if (ae.getSource() == send)
      {
         send();
      }
      else if (ae.getSource() == cancel)
      {
         cancel();
      }
   }

   public static void main(String args[])
   {
      MailMessage mm = new MailMessage(args[0]);
   }
}

⌨️ 快捷键说明

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