当前位置: 技术问答>linux和unix
请问如何解析这个文本啊?然后进行插入到数据库中?
来源: 互联网 发布时间:2015-08-24
本文导语: 文本格式如下: a.txt: 1 09:19:30.022406 178.100.101.225 65.208.228.223 TCP 1118 > http [ACK] Seq=1360019 Ack=2128362679 Win=8280 Len=0 SLE=2128364059 SRE=2128364072 2 09:19:30.069024 178.100.101.22 65.208.228.223 TCP 1117 > http [RST] Seq=1360019 Ack=212...
文本格式如下:
a.txt:
1 09:19:30.022406 178.100.101.225 65.208.228.223 TCP 1118 > http [ACK] Seq=1360019 Ack=2128362679 Win=8280 Len=0 SLE=2128364059 SRE=2128364072
2 09:19:30.069024 178.100.101.22 65.208.228.223 TCP 1117 > http [RST] Seq=1360019 Ack=2128364072 Win=0 Len=0
------
每一行即为一条纪录,共6个字段,分别为:ID,TIME,Src_ip,Dest_ip,Proto,Info.我想把文本中每一行插入到数据库中,数据库中也有相应的表,一样的6个字段.请问如何解析这个文本啊?然后进行插入到数据库中?
a.txt:
1 09:19:30.022406 178.100.101.225 65.208.228.223 TCP 1118 > http [ACK] Seq=1360019 Ack=2128362679 Win=8280 Len=0 SLE=2128364059 SRE=2128364072
2 09:19:30.069024 178.100.101.22 65.208.228.223 TCP 1117 > http [RST] Seq=1360019 Ack=2128364072 Win=0 Len=0
------
每一行即为一条纪录,共6个字段,分别为:ID,TIME,Src_ip,Dest_ip,Proto,Info.我想把文本中每一行插入到数据库中,数据库中也有相应的表,一样的6个字段.请问如何解析这个文本啊?然后进行插入到数据库中?
|
用strtok函数
或者自己解析
if(line[i] != ' ')
{
token[j] = line[i];
}else{
......
}
或者自己解析
if(line[i] != ' ')
{
token[j] = line[i];
}else{
......
}
|
用Perl的Regular Expression和DBI,就OK了。
|
看你用什么语言实现了,用java实现起来就简单多了,要用c就麻烦大。
getline()读入,
用strtok()解析,
我用qt写过ini文件分析类,可惜公司机器不能上网,没法给你,其实很简单的。
getline()读入,
用strtok()解析,
我用qt写过ini文件分析类,可惜公司机器不能上网,没法给你,其实很简单的。
|
Perl是最简单的。
http://www.honeynet.org/scans/scan30/sub/5.pdf是我写的一个分析报告,上边有一些脚本,你自己研究研究吧.
http://www.honeynet.org/scans/scan30/sub/5.pdf是我写的一个分析报告,上边有一些脚本,你自己研究研究吧.