快速业务通道

Java设计防病毒电子邮件程序 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-23
); return false; }// catch结束 }//end forwardEmailMsg

这段代码会引起消息被发送到接收者,尽管前面提到的文档中没有明确地说明。

成功时返回true

如果上面的代码返回true就表明调用的方法发送了消息,并且现在可以从服务器删除该消息,从工作文件夹移动到文档文件夹了。

异常

如果forwardEmailMsg方法中调用的任何SmtpClient方法产生了异常,它都会被代码中的catch代码块捕捉到。

Catch代码块输出一些诊断信息、提醒用户并返回False。它表明调用方法并没有转发消息,不能从公共电子邮件服务器上删除它,不能移动到文档文件夹中。

重新运行VirPro01b来试图发送消息可能有用,也可能没有用,这依赖于异常的具体种类。如果引起异常的是严重的网络拥塞而导致的超时,那么重新运行程序发送消息是很好的选择。对于其它一些更严重的问题,重新运行可能不会成功,应该在前面提到的文本编辑器中检查消息。

MoveFile方法

在进入VirPro01b类的构造函数的细节前我还要讨论另一个有用的方法。下面的代码完整地显示了moveFile方法:

private void moveFile(String pathFileName,String archivePath){  String fileName = pathFileName.substring(  pathFileName.lastIndexOf(''/'') + 1);  String archivePathFileName =archivePath + fileName;  boolean moved =new File(pathFileName).renameTo(  new File(archivePathFileName));  if(!moved)System.out.println("Unable to move " + new File(pathFileName) + "\nto " + new File(archivePathFileName)); }// moveFile方法结束

Java设计防病毒电子邮件程序(8)

时间:2010-09-13

输入参数

这个方法接收两个输入参数:

· PathFileName(文件名和路径)——文件的名称和当前位置。

· ArchivePath(文档路径)——文件的目的地。

这个方法用于把消息文件从工作文件夹移动到文档文件夹。它把文件从pathFileName指定的当前位置移动到archivePath指定的新位置。

如果操作成功,File类的reName方法将返回true,否则返回false。例如,如果在目标文件夹中已经存在一个同名的文件,操作将返回false,并且上面的代码将输出一个消息表明移动操作没有成功。

VirPro01b类

下面的代码是VirPro01b的开始部分,包括一些实例变量的声明和初始化。其中一些注释表明了实例变量的使用方法,因此我没有进一步解释它们。

class VirPro01b extends Frame{ //下面是程序启动时保密电子邮件提供的ID它是作为命令行参数提供的 String recipient; //下面是存储等待病毒扫描和转发的消息文件的本地文件夹。 //你可以改变它。 String dataPath = "./Messages/"; //下面是存储扫描后并转发到秘密电子邮件帐号的消息的本地文件夹。 //从公共电子邮件服务器上删除后它们被自动地移动到这个文件夹。 //你可能需要周期性地清除这个文件夹。 String archivePath = "./Archives/"; //下面是程序用于不同目的的工作变量。 BufferedReader inputStream; PrintWriter outputStream; Socket socket; String pathFileName; Vector msgToDelete = new Vector();

我要提醒你,你可以通过简单地改变dataPath和archivePath的初始值来改变工作文件夹和文档文件夹的位置和名称。(在运行程序之前要确保新的文件夹已经建立了。)

Main方法

Main方法如下所示:

public static void main(String[] args){  if(args.length != 5){   System.out.println("Usage: java VirPro01b " + "pubServer userName password " + "secretServer smtpServer");   System.exit(0);  }// if结束  new VirPro01b(a

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号