XMLファイルの取得について

解決


にんにん  2006-02-08 21:16:49  No: 94063

XMLファイルの内容は以下のとおりです。

  <?xml version="1.0" encoding="UTF-8" ?> 
- <result>
  <status>success</status> 
- <file>
  <ccd>AAAAAAAAAAAA</ccd> 
  <count>1</count> 
  </file>
- <file>
  <ccd>BBBBBBBBBBBB</ccd> 
  <count>1</count> 
  </file>
- <file>
  <ccd>CCCCCCCCCCCC</ccd> 
  <count>1</count> 
  </file>
  </result>

上記のファイルから
ccd(AAAAAAAAAAAA、BBBBBBBBBBBB、CCCCCCCCCCCC)を取得したいのですがうまくいきません。
ご指摘お願いいたします。

    Dim MSxml As Object

    Set MSxml = CreateObject("Microsoft.XMLHTTP")
    MSxml.Open "POST", "http://www.xxx.net/Data/public/searchAction.do", False
    MSxml.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
    MSxml.send ("account=" & strGroupid & "&password=" & strPass)

    Debug.Print MSxml.Status
    Debug.Print MSxml.responseText

■Debug.Printで確認した結果
<?xml version="1.0" encoding="UTF-8"?>
<result>
  <status>success</status>
</result>
となります。statusは200でした。


魔界の仮面弁士  2006-02-08 21:38:39  No: 94064

> XMLファイルの内容は以下のとおりです。
要素の前にある「-」って、何か意味があるのでしょうか?
(そのままだと、不正なxmlとして認識されてしまうはずなので…)

> ccd(AAAAAAAAAAAA、BBBBBBBBBBBB、CCCCCCCCCCCC)を取得したいのですがうまくいきません。
MSXML の DOM にロードしておいて、
For Each X In .documentElement.selectNodes("//ccd")
  Debug.Print X.text
Next
とか。


にんにん  2006-02-09 01:12:14  No: 94065

回答ありがとうございます。
-ですか・・・。たしかについてますね。別担当者の作成XMLファイルなので確認してみます・・・。

    'DOMにロード
    Set xmlDoc = CreateObject("Microsoft.XMLDOM")
    xmlDoc.async = "false"
    bSuccess = xmlDoc.Load(GPSxml.responseXML)

    If bSuccess Then
       For Each Node In xmlDoc.documentElement.childNodes("//ccd")
        Debug.Print X.Text
       Next
    End If

For Each Node In ・・・のstepで型が異なるとエラーになってしまいます。


にんにん  2006-02-10 00:52:02  No: 94066

できました。アドバイスありがとうございました。助かりました。

    If bSuccess Then
       For Each Node In xmldoc.documentElement.getElementsByTagName("ccd")
        Debug.Print Node.Text
       Next
    End If


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加