我有一个名为$urls
的数组,它包含URL。我想在_IENavigate
循环中使用For
来访问每个网址,但不知道如何将数组与_IENavigate
一起使用。
这是我到目前为止所做的:
If Not _FileReadToArray("\urls.txt", $urls) Then
MsgBox(4096, "Error", " Error reading log to Array. Error:" & @error)
Exit
EndIf
For $u = 1 to $urls[0]
_IENavigate($mIE, $urls)
Next
答案 0 :(得分:1)
要访问数组元素编号N
,请使用$aArray[N]
。
Local $aArray[6] = [5, "Hello", "World", "Foo", "Bar", "Goodbye"]
For $i = 1 To $aArray[0]
ConsoleWrite( $aArray[$i] & @LF)
Next
因此,在上面的示例中,您希望在For ... Next循环中使用$urls[$u]
。
答案 1 :(得分:1)
Matt是correct。他实际上正在调整你的代码结构并提供一个工作示例。
只要您不必处理循环内部Array的索引,就不要在第一个元素中使用数组的大小然后使用{{ 1}}:
For ... In ... loop
要删除第一个元素,您可以For $url In $urls
_IENavigate($mIE, $urls)
Next
并使用#include <Array.au3>
。但我宁愿在文件中读取没有将大小存储为第一个元素的URL:
_ArrayDelete($urls, 0)
- 所以你不必处理第一个元素,你已经被行拆分了。您仍然可以使用$urls = StringSplit(StringStripCR(FileRead("urls.txt")), @LF, 2)
来了解成功。
只是一个提示:使用缩进来使代码更具可读性。