Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/265.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用SharpPcap以可读格式从TcpPacket获取数据?_C#_Packet Capture_Packet Sniffers_Sharppcap_Packet.net - Fatal编程技术网

C# 如何使用SharpPcap以可读格式从TcpPacket获取数据?

C# 如何使用SharpPcap以可读格式从TcpPacket获取数据?,c#,packet-capture,packet-sniffers,sharppcap,packet.net,C#,Packet Capture,Packet Sniffers,Sharppcap,Packet.net,我正在为我最后一年的项目构建嗅探器。我想以人类可读的格式从TCP中提取数据 我使用位转换器获取十六进制格式的数据,但我希望数据可读,即所有Http浏览链接、Get请求、Post请求以及输出中的其他数据。 这是我的密码: while((packet = device.GetNextPacket()) != null) { var pack = PacketDotNet.Packet.ParsePacket(packet.LinkLayerType, packet.Data); var

我正在为我最后一年的项目构建嗅探器。我想以人类可读的格式从TCP中提取数据

我使用位转换器获取十六进制格式的数据,但我希望数据可读,即所有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);
   }
}
请帮忙,我时间不多,搜索了很多,但什么也找不到

提前感谢

您可以使用下一步:

var data=Encoding.Unicode.GetString(tcp.PayloadData)

这是您想要的