[英]What is the most efficient way of repeatedly writing to an XML file in Android?
我正在編寫一個應用程序,需要在一天內重復地將節點添加到現有的XML文件中。 以下是我嘗試追加的節點列表示例:
<gx:Track>
<when>2012-01-21T14:37:18Z</when>
<gx:coord>-0.12345 52.12345 274.700</gx:coord>
<when>2012-01-21T14:38:18Z</when>
<gx:coord>-0.12346 52.12346 274.700</gx:coord>
<when>2012-01-21T14:39:18Z</when>
<gx:coord>-0.12347 52.12347 274.700</gx:coord>
....
這可能在很長一段時間內每秒發生幾次,我想知道最好或最有效的方法是什么。
以下是我現在正在做的事情:使用DocumentBuilderFactory解析XML文件,查找容器節點,追加子節點,然后使用TransformerFactory將其寫回SD卡。 但是,我注意到隨着文件變大,這需要花費越來越多的時間。
我試圖想出一個更好的方法,這是我唯一能想到的:使用RandomAccessFile加載文件並使用.seek()到文件中的特定位置。 我會根據文件長度計算位置,並在我追加之后減去我所知道的文件長度。
我很確定這種方法可行,但與使用DocumentBuilderFactory相比,感覺有點盲目。
有沒有更好的方法呢?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.