import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
/*
* 用来过滤不合法字符的攻击类
当要过滤非法字符时通过这个类调用里面的filterWords方法即可
java stream*
*/
public class StopWord {
private static List<String> stopwords = new ArrayList<>();
//静态代码块 类加载的时候加载 只加载一次
static {
//通过类加载器 到放在根目录下的txt文件
InputStream inPutStream = ClassLoader().getResourceAsStream("");//放在根目录下的txt文档
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inPutStream));
String str;
try {
while((adLine())!=null){
stopwords.add(str);
}
} catch (IOException e) {
e.printStackTrace();
}
}
//filter方法 把不合法的字符 替换成 *号
public static String filterWords(String content){
for (String stopword : stopwords) {
content = placeAll(stopword, createTemp(stopword));
}
return content;
}
//传入关键字字符串 根据长度返回该长度的*号
private static String createTemp(String stopword) {
StringBuilder sb = new StringBuilder();
for (int i=0;i<stopword.length();i++) {
sb.append("*");
}
String();
}
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论