您的位置:首页 > 编程语言 > Java开发

单线程解析文件,根据文件关键词进行统计,并将结果输出(二)

2016-06-17 15:55 721 查看
上一篇: 单线程解析文件,根据文件关键词进行统计,并将结果输出(一)

中得到总结是:

AllHandler类获得文件流,进行遍历每一行数据,将符合关键字的每一行数据,交给对应的处理器loadFileHandler、udpConnectHandler处理。

本小节目标:完成AllHandler类的设计

1、首先获取文件流:利用BufferReader和FileReader实现,避免使用Scaner,否则会出现,读取文件不完整的问题

2、将读取的文件,利用spirt()分离开/t,成为一个String[]类型字符串

3、将该组字符串进行交接给对应的处理器;

至此任务就本类任务完成,切记类的单一原则

eg:

[udpconnect ㅗ楚天 Udp_Connect 第0次连接成功 219.139.48.64   2016-06-0100:08:51] 解析去掉/t之后,得到

[udpconnect,
ㅗ楚天 Udp_Connect 第0次连接成功,
 219.139.48.64 ,

2016-06-0100:08:51]

代码如下:放到相应的处理器,利用通过xml文件注册信息,得到对应的类进行处理
实现牛逼的从xml文件注册得到对应处理器,就像平时看到的框架一样

public class allstathandler
{
//读取路径为path的文件
public void readfile(string path)
{
try
{
bufferreader br=new bufferreader(new filereader(path));

while(br.readline()!=null)
{
string line=br.readline();//读出一行

string[]values=line.split("\t");//去掉分行符

<span style="font-size:18px;background-color: rgb(255, 255, 0);">//放到对应的处理器中,会在第四节中讲,比较精简的办法,提高代码逼格</span>

}

br.close();//读取完后关闭,任务完成
}catch(exception)
{

}

}
}


下一篇,讲对应的处理器的实现,利用扩中接口。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息