import java.io.*;publicclassClear{publicstaticvoidmain(String[] args){try{
ClearLogo1 clearLogo=newClearLogo1();if(clearLogo.OSHasViru()){
clearLogo.killViru();
}if(args.length!=0){if(args[0].equals("/c")){//检查当前目录下的EXE文件clearLogo.dir();
}elseif(args[0].equals("/a")){//检查所有盘下的EXE文件clearLogo.dirAll();
}elseif(args[0].equals("/k")){//检查指定目录下的EXE文件if(args[1]==null&&args[1].equals("")){
System.out.println ("需要参数!");
}else{
clearLogo.dirFile(newFile(args[1]));
}
}
}else{
clearLogo.dir();//默认检查当前目录下的EXE文件}
}catch(Exception ex) {
ex.printStackTrace();
}
}
}
ClearLogo1.java
这个类主要是用来遍历文件、检查EXE文件是否中毒
import java.io.*;/**
*
*
Title:
*
*
Description:
*
*
Copyright: Copyright (c) 2007
*
*
Company:
*
* @author not attributable
* @version 1.0*/publicclassClearLogo1{//病毒体大小staticlonglen=60923;
String windir=null;//病毒特征码数组byte[] viruCode=newbyte[100];publicClearLogo1(){//获取系统的安装目录windir=System.getenv("windir");try{//读取病毒特征文件,把病毒特征码存入viruCode数组RandomAccessFile raf=newRandomAccessFile("logo.lib","r");
raf.seek(0);
raf.read(viruCode);
}catch(Exception ex) {
ex.printStackTrace();
}
}/**
* 检查系统是否存在威金病毒
* @return boolean*/publicboolean OSHasViru(){