如何:在 Visual Basic 中下载文件

更新:2007 年 11 月

可以使用 My.Computer.Network.DownloadFile 方法下载远程文件,并将下载后的文件存储到特定位置。如果 ShowUI 参数设置为 True,则显示一个对话框,该对话框显示下载的进度并允许用户取消该操作。默认情况下,不会覆盖同名的现有文件;如果希望覆盖现有文件,则将 overwrite 参数设为 True。

以下情况可能会导致异常:

说明:

  对话框中的可用选项以及显示的菜单命令的名称和位置可能会与“帮助”中的描述不同,具体取决于您的现用设置或版本。此帮助页是根据“常规开发设置”而编写的。若要更改设置,请在“工具”菜单上选择“导入和导出设置”。有关更多信息,请参见 Visual Studio 设置

安全说明:

不要根据文件的名称来判断文件的内容。例如,Form1.vb 文件可能不是 Visual Basic 源文件。在应用程序中使用输入的数据之前,需验证所有的输入内容。文件的内容可能不是预期内容,并且用来读取该文件的方法可能失败。

下载文件

  • 使用 DownloadFile 方法下载文件,同时将目标文件的位置指定为字符串或 URI 并指定要存储该文件的位置。此示例从 http://www.cohowinery.com/downloads 下载 WineList.txt 文件,并将下载后的该文件保存到 C:\Documents and Settings\All Users\Documents 中:

    My.Computer.Network.DownloadFile _
        ("http://www.cohowinery.com/downloads/WineList.txt", _
        "C:\Documents and Settings\All Users\Documents\WineList.txt")
    

下载文件,并指定超时间隔

  • 使用 DownloadFile 方法下载文件,同时将目标文件的位置指定为字符串或 URI,指定要存储该文件的位置,并以毫秒为单位指定超时间隔(默认值为 1000)。此示例从 http://www.cohowinery.com/downloads 下载 WineList.txt 文件,然后将该文件保存到 C:\Documents and Settings\All Users\Documents,同时将超时间隔指定为 500 毫秒:

    My.Computer.Network.DownloadFile _
        ("http://www.cohowinery.com/downloads/WineList.txt", _
        "C:\Documents and Settings\All Users\Documents\WineList.txt", False, 500)
    

在提供用户名和密码的情况下下载文件

  • 使用 DownLoadFile 方法下载文件,同时将目标文件的位置指定为字符串或 URI,并指定要存储该文件的位置、用户名和密码。此示例使用用户名 anonymous 和空密码从 http://www.cohowinery.com/downloads 下载 WineList.txt 文件,然后将该文件保存到 C:\Documents and Settings\All Users\Documents。

    My.Computer.Network.DownloadFile _
        ("http://www.cohowinery.com/downloads/WineList.txt", _
        "C:\Documents and Settings\All Users\Documents\WineList.txt", "anonymous", "")
    
    安全说明:

    DownLoadFile 方法使用的 FTP 协议以纯文本方式发送信息(包括密码),因此不应用它传送敏感信息。

请参见

任务

如何:在 Visual Basic 中上载文件

如何:在 Visual Basic 中分析文件路径

参考

My.Computer.Network 对象

My.Computer.Network 对象成员

My.Computer.Network.DownloadFile 方法