我正在为我的最后一年的项目构建嗅探器,我想以人类可读的格式从TCP中提取数据。
我使用BitConverter以十六进制格式获取数据,但我希望数据是可读的,即输出中的所有Http浏览链接、Get请求、Post请求和其他数据。这是我的代码:
while((packet = device.GetNextPacket()) != null)
{
var pack = PacketDotNet.Packet.ParsePacket(packet.LinkLayerType, packet.Data);
var tcp = TcpPacket.GetEncapsulated(pack);
if(tcp != null)
{
var sp = tcp.SourcePort;
var dp = tcp.DestinationPort;
var data = BitConverter.ToString(tcp.PayloadData);
Console.WriteLine("{0}:{1}:{2}",sp,dp,data);
}
}请帮帮忙,我的时间少了,找了很多东西,但什么也找不到。
提前感谢
发布于 2014-03-23 15:21:11
您可以使用next:
var data = Encoding.Unicode.GetString(tcp.PayloadData);
https://stackoverflow.com/questions/20560468
复制相似问题