話說,當(dāng)初一直不明白公司郵箱服務(wù)器是怎么實(shí)現(xiàn)郵件病毒掃描的,因?yàn)楫?dāng)時(shí)沒能理解郵件的結(jié)構(gòu),其實(shí)郵件是一個(gè)文件夾郵件里的附件也會(huì)放在這個(gè)文件里,只不過他們間用特殊的分界符隔開,也就是傳說中的規(guī)則,然后用如下代碼調(diào)用外部的殺毒軟件,根據(jù)殺毒軟件掃到毒和沒掃到毒返回的結(jié)果不一樣,再判斷,說到底還是殺毒軟件的功勞。
還有那垃圾郵件,當(dāng)初也不明白他是怎么差別的,這個(gè)有點(diǎn)意思,有評(píng)分制的方法,就是和他的一個(gè)垃圾庫(kù)對(duì)比,然后有這個(gè)詞,有這個(gè)網(wǎng)址加多少分,當(dāng)然沒說的這么簡(jiǎn)單,只是為了說明這種機(jī)制。然后把得出的總分和設(shè)定的分比較來(lái)看一郵件是不是垃圾郵件,有點(diǎn)類似復(fù)合特征碼哦,呵呵,人類的智慧偉大吧。
package com.cmd;
import java.lang.*;
import java.io.*;
public class Process {
public static void main(String[] args) {
java.lang.Process process = null;
try {
process = Runtime.getRuntime().exec("net user");
ByteArrayOutputStream resultOutStream = new ByteArrayOutputStream();
InputStream errorInStream = new BufferedInputStream(process.getErrorStream());
InputStream processInStream = new BufferedInputStream(process.getInputStream());
int num = 0;
byte[] bs = new byte[1024];
while((num=errorInStream.read(bs))!=-1){
resultOutStream.write(bs,0,num);
}
while((num=processInStream.read(bs))!=-1){
resultOutStream.write(bs,0,num);
}
String result=new String(resultOutStream.toByteArray());
System.out.println(result);
errorInStream.close(); errorInStream=null;
processInStream.close(); processInStream=null;
resultOutStream.close(); resultOutStream=null;
} catch (IOException e) {
e.printStackTrace();
}finally{
if(process!=null) process.destroy();
process=null;
}
}