我有下面的代碼,它用來完美的工作,但現在出於某些原因,沒有。用經典ASP解析XML問題(VBscript)
我讀的XML位於:https://forex.boi.org.il/currency.xml
下面的代碼應解析XML,然後保存USD/ILS匯率。正如我所說,它不再,我不知道什麼是錯的。
forexURL = "https://forex.boi.org.il/currency.xml"
getUSDRate = 0
MyRate = 0
Set xmlObj = Server.CreateObject("MSXML2.FreeThreadedDOMDocument")
xmlObj.async = False
xmlObj.setProperty "ServerHTTPRequest", True
xmlObj.Load(forexURL)
Set xmlList = xmlObj.getElementsByTagName("CURRENCY")
Set xmlObj = Nothing
x = 1
For Each xmlItem In xmlList
response.write "<p>" & xmlItem.childNodes(0).text
response.write "<p>" & xmlItem.childNodes(1).text
response.write "<p>" & xmlItem.childNodes(2).text
response.write "<p>" & xmlItem.childNodes(3).text
response.write "<p>" & xmlItem.childNodes(4).text
response.write "<p>" & xmlItem.childNodes(5).text
response.write "<p>___________________<br />" & x & "</p>"
if xmlItem.childNodes(2).text = "USD" then
MyRate = xmlItem.childNodes(4).text
exit for
end if
x = x +1
Next
Set xmlList = Nothing
「不工作」不是錯誤描述。你需要在分析問題方面做得更好。 – Tomalak
我想你是對的。這個循環'For Each xmlItem In xmlList'不會事件執行一次。這意味着它找不到'CURRENCY'標籤。但它存在 – kneidels
加載XML文檔後,您不會執行任何錯誤檢查。在嘗試執行「加載」操作後,您應該檢查[parseError'屬性](https://msdn.microsoft.com/en-us/library/ms756041%28v=vs.85%29.aspx)。 – Tomalak