2011-02-06 53 views

回答

3

當然你也可以,ColdFusion提供了強大的XML處理工具。

通常情況下,您需要使用XmlParse將XML文件解析到XML文檔對象中,然後使用XPath語言和XmlSearch進行搜索。獲取的數據可以輕鬆用於插入數據庫或任何其他操作。

請注意,目前有更多有用的XML functions,例如,您可能有興趣在解析XML之前驗證XML。

如果您需要特定情況下的幫助 - 請延長您的問題或詢問另一個問題。

3

如果您正在處理分析時適合內存的XML文檔,@Sergii的答案是正確的選擇。另一方面,XML本身很冗長,ColdFusion使用DOM XML解析器,很容易導致內存不足錯誤。

在這種情況下,給定MySQL和ColdFusion,我會看到兩種替代路徑。一種是如果可能,將桌面應用程序的數據導出爲CSV。然後使用MySQL的LOAD DATA INFILE,您可以從ColdFusion調用它導入數據。這可能是最快的表現。

如果您無法更改桌面應用程序的導出格式,請考慮使用Java StAX parser代替。 See my answer from another question for an example of how to do this with ColdFusion。這樣做的好處是在任何給定的時間只將部分XML文檔引入內存,但比DOM解析器更難於使用。因此你不會得到OOM錯誤。

請注意,還有第三種類型的解析器也可以從Java - SAX獲得 - 它與StAX解析器具有相同的質量,不會將整個文檔加載到內存中。但是,與IMO合作是一個更困難的方法,因此StAX建議。