1

我想用 c# 将文件复制到 pendrive 或硬盘驱动器。当我复制它们时,我可以通过检查时间和我已经复制了多少千字节来检查传输速度。但是有没有办法在开始复制之前快速猜测速度?我想知道复制需要多长时间。有办法吗?

谢谢你。

4

2 回答 2

1

但是有没有办法在开始复制之前快速猜测速度?

我不这么认为。

如果有办法,Windows Copy-Paste 持续时间(剩余时间)预测会好得多。

目前我认为,对于任何复制粘贴操作,Windows 都会找出要复制的所有数据的长度。然后在复制操作期间,它找出复制了多少,剩下多少。基于它,它猜测剩余时间。在整个复制粘贴过程中,剩余时间会一次又一次地重新计算。

例如,
假设要复制的数据是 100 MB。
如果 1 分钟后复制 1 MB,则剩余时间为 99 分钟。
如果 2 分钟后复制了 4 MB,则剩余时间为 48 分钟。
如果 10 分钟后,复制 5MB,剩余时间为 190 分钟。

注意->以上是我的观察,并不是基于内部算法实现的权威答案。

于 2013-01-13T17:18:07.857 回答
0

距离 = 速率 * 时间

将距离(剩余千比特)除以速率(每秒千比特)。您应该能够在几秒钟内获得粗略的时间。

于 2013-01-13T17:18:30.897 回答