如何计算2点之间的时间

时间:2017-01-29 12:47:21

标签: c# datetime

我的Wireshark文件里面有几个packets。 从用户和通过command line arguments我从用户获得2个参数: 1. Number of packet to add。 2. delay

现在,在第一个packet之后,我需要添加用户指定的packets个数,并且此packets之间的延迟需要为delay值,但这个延迟需要在所有packets之间划分。

例如: 用户发送号码1508,因此在第一个packet之后我需要添加另外149个新packets(应该总共250个数据包)以及所有这些之间的延迟packets需要为milliseconds。 从第一个数据包我有timestamp属性(DateTime对象) 因此,对于每个timestamp,我需要添加53.33 microseconds

所以这是我的第一个packet

的函数

int numberOfpackets; int delay;

private static DateTime GetNewTimeStamp(packet packet)
{
    DateTime newTimeStamp = packet.timeStamp;
}

如何根据用户的这两个参数添加构建新timestamp(时间不仅仅是延迟)?

1 个答案:

答案 0 :(得分:0)

您可以使用DateTime.Add(TimeSpan)方法将具有指定偏移量的新DateTime对象返回到当前实例。

对于TimeSpan对象,您需要在Ticks中指定时间量,因为其他构造函数的分辨率仅降低到毫秒。 您可以使用TimeSpan.FromTicks(Long)来获得这样的TimeSpan,其中1 tick等于100纳秒。