函数参考


InetRead

通过HTTP,HTTPS或FTP协议从互联网上下载一个文件.

InetRead ( "URL" [, 选项 ] )

参数

URL 要下载文件的 URL(地址). 参考注意事项.
选项 [可选参数] 0 = (默认)如有可能则从本地缓存中获得文件.
1 = 强制性地要求脚本从远程站点重新下载文件.
2 = 忽略所有 SSL 错误(使用 HTTPS 连接时).
4 = 使用FTP协议传输文件时,使用 ASCII 方式传输文件(不能和标志 8 一起使用).
8 = 使用FTP协议传输文件时,使用 二进制 方式传输文件(不能和标志 4 一起使用). 如果未使用过或者上次未指定,则二进制方式为默认传输方式.
16 = 通过强制连接上线 (参考备注).

返回值

成功: 返回一个二进制字符串并将 @extended 设置为下载的字节数.
失败: 设置 @error 为非零并返回一个空字符串.

注意/说明

为保证此函数的正常工作必须安装 Internet Explorer 3 或更高版本.

URL 参数是指类似"http://www.somesite.com/path/file.html"这样的形式,这和我们在网页浏览器中输入的地址是一样的格式.

如果连接时需要指定用户名及密码,只要在主机名前加以下前缀即可:"用户名:密码@"(都是英文字符),比如
"http://myuser:mypassword@www.somesite.com"

返回的数据为二进制格式. BinaryToString() 函数可以用于转换二进制数据到字符串.

默认情况下, AutoIt 将在下载前强制进行一个连接. 拨号用户将会提示上线(连接网络)或者使用 modem 进行拨号(取决于系统如何设置). 选项值 16 将禁用此操作. 禁用此操作对固定连接(宽带[指光纤之类直接使用固定IP的连接], 局域网LAN)很有用. 但是,还必须解决在Windows Vista和Windows 7的一些问题.

相关

InetGet, InetGetSize, HttpSetProxy, FtpSetProxy, HttpSetUserAgent

示例/演示


Local $sData = InetRead("http://www.autoitscript.com/autoit3/files/beta/update.dat")
Local $nBytesRead = @extended
MsgBox(4096, "", "Bytes read: " & $nBytesRead & @CRLF & @CRLF & BinaryToString($sData))