有时,我们会收到很多不受欢迎的 电子邮件,这些邮件往往令人不快。那些还没有受垃圾电子邮件之苦的幸运者也应该意识到这 是一个现实的问题。这里我们将介绍一种利用JAVA控制垃圾电子邮件的方法。
我们无法逃避垃圾电子邮件,只能 尽量减少它对我们生活的侵扰。最好,也是最有效的方法是阻止人们给我们发不受欢迎的电子 邮件。我们必须在看到垃圾电子邮件之前消除它,那么如何实现呢?
一种行之有效的方法是检查电子邮件的内容,然后决定是否保留它。其实,我们在阅读电子邮件时就是这样做的:我们一个接一个字符、一行接一行地读电子邮件,搜索我们认识地单词,如果其中包括单词“Java”,我们便保留它,如果包括“MakeMoneyFast”,我们便将它扔到垃圾桶里。能否编制一个计算机程序来帮助我们更有效地工作呢?
下面,我们讨论Java类库I/O包中 的类。Java类库的输入输出类基于一种简单但强大的模型:“流”(Streams)。
在“流”模型中,信 息从一点“流”到另一点,就象在河流或者管道中一样。在“流”中的任何一点,观察者看到信息一 点一点地顺序流过。这种模型适合现实世界中很多类型的信息,比如来自计算机键盘的键 码(Keycodes)、来自声音文件的声音数据、来自文本文件的一行接一行的文本等都是信息流。
图1“流”中信息从一点传到另一点
“流”中的一个重 要工具便是“过滤器”(Filters)。“过滤器”从“流”的“上游”获取信息,用某种方式过滤或者处理 后,发送到“流”的“下游”。“流”模型功能强大的关键是可以用一些非常简单的、独立的“过滤器” 串成一个功能强大的复合“过滤器”。
图2“过滤器”中断处理信息流
图3级联“过滤器”
Java类库将“流”分为两类──输 入和输出,这种区分在理论上是不必要的,但是在实际应用中却是有用的。输入“流”的最初来源 是某一设备或者文件,它将数据从设备或文件输入到程序中,输入“流”在处理中一般是要过滤 的。输出“流”的最终目标也是某一设备或者文件,它将数据从程序输出到设备或文件中,输入“ 流”在处理中一般也是要过滤的。
有两个原因使我们将Java类库中 的“流”类应用到垃圾电子邮件问题的解决方案中:
Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved. 闵涛 E_mail:admin@mintao.net(欢迎提供学习资源)
鄂公网安备 42011102001154号
站长:MinTao ICP备案号:鄂ICP备11006601号-18