c语言如何下载,如何用C语言编程下载大文件#

在处理之前,我需要以编程方式下载一个大文件。最好的办法是什么?由于文件很大,我希望等待特定的时间,以便可以强制退出。

我知道webclient.downloadfile()。但似乎没有办法确定等待的具体时间,以便强行退出。

try

{

WebClient client = new WebClient();

Uri uri = new Uri(inputFileUrl);

client.DownloadFile(uri, outputFile);

}

catch (Exception ex)

{

throw;

}

另一种方法是使用命令行实用程序(wget)下载文件并使用processstartinfo启动命令,并使用process'waitforexit(int ms)强制退出。

ProcessStartInfo startInfo = new ProcessStartInfo();

//set startInfo object

try

{

using (Process exeProcess = Process.Start(startInfo))

{

//wait for time specified

exeProcess.WaitForExit(1000 * 60 * 60);//wait till 1m

//check if process has exited

if (!exeProcess.HasExited)

{

//kill process and throw ex

exeProcess.Kill();

throw new ApplicationException("Downloading timed out");

}

}

}

catch (Exception ex)

{

throw;

}

有更好的办法吗?请帮忙。谢谢。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值