用C#电子邮件验证的类

用C#电子邮件验证的类


Author: Qingming  &;nbspFrom:Internet


                /*
  电子邮件验证
  Windows2000 、Microsoft.NET Beta2、C#
  Made By Qingming Zhao
  Email: zqm2000@126.com
  2002,2,17
  csc /target:library ValideEmail.cs
  */
  using System;
  using System.Net.Sockets;
  using System.IO;
  using System.Text;
  namespace BysWangZhan
  {
  class ValidateEmail //电子邮件验证
  {
  public string strEmail;
  public string strServer;
  public int intPort;
  string Email
  {
    set
    {
    strEmail=value;
    }
    get
    {
    return strEmail;
    }
  }
  string Server
  {
    set
    {
    strServer=value;
    }
    get
    {
    return strServer;
    }
  }
  int Port
  {
    set
    {
    intPort=value;
    }
    get
    {
    return intPort;
    }
  }
  /* static void Main(string[] args)
  {
    ValidateEmail MyTest=new ValidateEmail();
    MyTest.Email="zqm446@octopus.cdut.edu.cn";
    MyTest.Server="octopus.cdut.edu.cn";
    MyTest.Port=25; //默认端口是25
    Console.WriteLine(MyTest.Exists());
  }
  */ public bool Exists()
  {
    TcpClient tcpc = new TcpClient();
    tcpc.Connect(strServer,intPort);
    StreamReader sr1 = new StreamReader(tcpc.GetStream(),Encoding.Default);
    sr1.ReadLine();
   
    if(OperaStream(tcpc,"HELO " strServer) != "250")
    {
    OperaStream(tcpc,"QUIT");
    return false;
    }
    if(OperaStream(tcpc,"MAIL FROM: my@my.com") != "250")
    {
    OperaStream(tcpc,"QUIT");
    return false;
    }
    if(OperaStream(tcpc,"RCPT TO: " strEmail) != "250")
    {
    OperaStream(tcpc,"QUIT");
    return false;
    }
    else
    {
    OperaStream(tcpc,"QUIT");
    return true;
    }
  }
  static string OperaStream(TcpClient tcpc,string strCmd)
  {
    Stream TcpStream;
    strCmd = strCmd  "\r\n"; //加入换行符
    TcpStream = tcpc.GetStream();
    byte[] bWrite = Encoding.Default.GetBytes(strCmd.ToCharArray());
    TcpStream.Write(bWrite,0,bWrite.Length);
    StreamReader sr = new StreamReader(tcpc.GetStream(),Encoding.Default);
    string rl = sr.ReadLine();
    string sp = rl.Substring(0,3);
    return sp;
  }
  }
  }
    (2005-5-19:04:43)

 感谢原创者的辛勤劳动,希望对您有所帮助,转载请注明原出处。
 您可能对 [C#] 的这些文章也感兴趣:

微软.NET平台中类型使用的基本原理
通过实例学习C#开发中的泛型
VisualStudio.Net内幕(8)
用VisualC#获得计算机名称和IP地址
C#3.0 为我们带来什么(5) —— 匿名类型
DataGrid - 导出Excel文件(WinForm)
c#中播放WAV文件,(PlayEmbeddedWAVFilein.c#)
BeginnerwithC#4
多线程在VisualC#网络编程中的应用
C#是什么?