0

次のXMLファイルの内容があります。

<?xml version="1.0" encoding="UTF-8"?>
<dataroot xmlns:od="urn:schemas-microsoft-com:officedata" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:noNamespaceSchemaLocation="Vini.xsd" generated="2012-07-24T17:35:00">
<Vini>
<ID>1</ID>
<Provincia>BG</Provincia>
<Produttore>ANGELO PECIS</Produttore>
<Nome>VALCALEPIO MOSCATO PASSITO ARGO</Nome>
</Vini>
<Vini>
<ID>2</ID>
<Provincia>BG</Provincia>
<Produttore>ANGELO PECIS</Produttore>
<Nome>VALCALEPIO ROSSO RISERVA ROSSO DELLA PEZIA</Nome>
</Vini>
...
<dataroot>

XMLを解析しようとしたとき

...
var xmlStr = new XML ( fileContents);
var str = xmlStr.xpath("//Vini");
len = str.length()

ビニス(len)の数は0です。なぜですか?

4

1 に答える 1

0

xpath 式は良さそうです。ここでも合流テストを行いました。質問は、xml が適切にインスタンス化されているかどうかです。

ファイル コンテンツ オブジェクトを調べてから、XML オブジェクト自体を調べます。両方のいずれかが初期化に失敗した可能性があります。コンテキストはわかりませんが、ExtendScript ToolKit を使用すると、大きな xml ファイルで失敗し、XML オブジェクトの読み込みに失敗します。

その場合は、XML の小さなチャンクを試して、それが優れているかどうかを確認してください。

于 2012-07-25T22:47:52.147 に答える