これは、stackoverflow に関する私の砦の投稿です。このサイトで似たような Q&A をたくさん検索しましたが、私の条件は少し違うようです。ここに私のvbscriptコードがあります:
- - - - - - コードスニペット - - - - - - - -
xmlurl = "songs.xml"
set xmlDoc = CreateObject("Microsoft.XMLDOM")
xmlDoc.async = False
xmlDoc.loadXML(xmlurl)
if xmlDoc.parseError.errorcode<>0 then
'error handling code
msgbox("error! " & xmlDoc.parseError.reason)
end if
------------ 終了コードスニペット ---------------
XML:
<?xml version="1.0" encoding="UTF-8"?>
<nowplaying-info-list>
<nowplaying-info mountName="CKOIFMAAC" timestamp="1339771946" type="track">
<property name="track_artist_name"><![CDATA[CKOI]]></property>
<property name="cue_title"><![CDATA[HITMIX]]></property>
</nowplaying-info>
<nowplaying-info mountName="CKOIFMAAC" timestamp="1339771364" type="track">
<property name="track_artist_name"><![CDATA[AMYLIE]]></property>
<property name="cue_title"><![CDATA[LES FILLES]]></property>
</nowplaying-info>
<nowplaying-info mountName="CKOIFMAAC" timestamp="1339771149" type="track">
<property name="track_artist_name"><![CDATA[MIA MARTINA]]></property>
<property name="cue_title"><![CDATA[TOI ET MOI]]></property>
</nowplaying-info>
</nowplaying-info-list>
UTF-8がWindowsと互換性がない可能性がある場合に備えて、最初の行を削除しようとしましたが(これに関するいくつかの投稿を見ました)、それでも同じエラーが発生しました。また、キャリッジ リターンの問題 (xml に隠された文字が埋め込まれている) があった場合に備えて、unix2dos を試してみました。私は何が間違っているのか理解できないようです。これは単純な XML ファイルです。perl 正規表現を使用して数分で解析できましたが、このスクリプトを Windows で実行する必要があるため、vbscript を使用します。同じ手法を使用して、他のソースからの XML を問題なく解析します。残念ながら XML を変更できません。外部ソースからのものです。Windows Vista ホーム エディションと Windows Server 2008 の両方でまったく同じエラーが発生しました。これまでのところ、テストのためにコマンド ラインから vbscript を実行しています (つまり、ASP ではありません)。
前もって感謝します、
サム