回答
我同意這兩個錯誤和duffymo。我只是想添加以下內容。
因爲它已經說過,兩者都是數據格式,所以想想你的數據。它有多大和多複雜?如果它是分層的,忘記CSV。如果它不是很大,那麼也一樣。
關於XML的思考請記住,DOM不是解析它的唯一方法。 SAX速度更快。您可以使用Digester(建立在SAX之上),允許您使用XML定義數據模型和XML模式之間的映射,然後運行速度非常快。
如果你的數據非常大,你的解析器必須非常快速地檢查JSON。它應該比XML更快,因爲它不那麼冗長。
我不知道性能,但其中一個因素是易於找到標準的,使用得很好的解析器。現在有一個內置於JDK的XML解析器,但我不知道有一個CSV解析器。我認爲XML遠比CSV更普遍。
另一個因素是數據的性質:XML建議使用層次結構,而CSV建議使用表格。我認爲讀取數據的「最佳」方式更多依賴於這樣的事情。
雖然我不能說更快的構建和易於維護,也不能表現;儘管我猜這取決於你如何使用被解析的文檔;例如讀取文檔節點的速度會比csv快,因此在CSV中加載文檔可能會更快。所有這一切說,CSV是邪惡的,這意味着它是非常不穩定的數據存儲。 XML有更多的開銷,但方式更穩定。
RELATED_QUESTION:When and Why is XML preferable to CSV?
讀一個CSV文件與FileReader
類是更快請讀者僅讀取文件和值的分析這裏是一個非常簡單的步驟。
另一方面,使用DOMReader
或SAXParser
(您不會使用構建器類讀取文檔,據我所知,它用於創建XML文檔)的XML文件讀取速度較慢,因爲處理XML數據是一個更復雜的步驟。 XML文件往往非常冗長。
XML文件的優勢在於,您可以對數據驗證(使用XSD進行XML結構定義時)施加更多壓力,即在讀取文件時測試值的正確性。也可以在沒有任何進一步解釋的情況下編輯XML文件,因爲XML元素名稱(和可能的註釋)在CSV文件中說的不僅僅是分號。
我一直在想。我只是做了一個粗略的測試,使用Excel來讀取和解析一個簡單的文件,其中有8,000條記錄。 XML負載耗時約8秒。 CSV加載時間不到1秒。
我認爲CSV對於簡單的表格數據來說是一個非常有效的選擇,並且攜帶了很少的整體感染。對於更復雜的場景,XML非常棒......
- 1. 閱讀csv文件
- 2. Java XML閱讀
- 3. 閱讀xml文件?
- 4. 閱讀多列csv閱讀
- 5. 閱讀Java文件
- 6. 閱讀大型csv文件
- 7. 閱讀大型CSV文件
- 8. 的iOS閱讀csv文件
- 9. 問題閱讀csv文件
- 10. python閱讀csv文件
- 11. 閱讀CSV文件時NumberFormatException
- 12. 閱讀CSV文件的LINQ
- 13. 熊貓閱讀.csv文件
- 14. 閱讀並同csv文件
- 15. 閱讀CSV文件WinPython
- 16. 閱讀CSV文件在PHP
- 17. 閱讀csv文件延遲
- 18. 閱讀csv文件c#
- 19. 如何閱讀.csv文件?
- 20. 閱讀與jQuery XML
- 21. 閱讀與JAXB xml
- 22. 閱讀CSV文件小寫與Python
- 23. 閱讀csv文件與filehelpers錯誤
- 24. 閱讀Java中的XML文件內容
- 25. java中的XML文件閱讀器
- 26. 閱讀java中的xml文件
- 27. java/javascript在線閱讀XML文件
- 28. CSV閱讀器Java錯誤
- 29. 在線閱讀XML文件
- 30. 閱讀XML文件標籤
這是一個非常廣泛的問題 - 答案取決於許多因素,例如文檔的大小和您嘗試執行的處理類型。你能否提供更多關於你想解決什麼問題的細節? – 2010-12-05 15:03:44