2010-10-05 79 views
0

我有100個地圖座標,我計劃以5 xml,s存儲,我如何將它們存儲在xml中並在此代碼中檢索它們。如何存儲地圖座標並檢索它們

MapView mapView; 
MapController mc; 
GeoPoint p; 

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.map1); 

    mapView = (MapView) findViewById(R.id.mapView); 
    new LinearLayout.LayoutParams(
      android.view.ViewGroup.LayoutParams.WRAP_CONTENT, 
      android.view.ViewGroup.LayoutParams.WRAP_CONTENT); 
    mapView.displayZoomControls(true); 

    mc = mapView.getController(); 
    String coordinates[] = {" 53.804224", "-1.759057"}; 
    double lat = Double.parseDouble(coordinates[0]); 
    double lng = Double.parseDouble(coordinates[1]); 

    p = new GeoPoint(
     (int) (lat * 1E6), 
     (int) (lng * 1E6)); 

    mc.animateTo(p); 
    mc.setZoom(17); 
    mapView.invalidate(); 
} 

@Override 
protected boolean isRouteDisplayed() { 
    // TODO Auto-generated method stub 
    return false; 
} 
+0

SQLiteDatabase? – bhups 2010-10-05 08:43:58

回答

0

xml is a marked language with many forms (title,head,content,sub-item). 
But your current data doesn't have such style. 
I suppose you'd better store them into binary files in a custom form as following: 
234.34 4535.435 
3455.24 3554.356 
235.234 45435.46 
............... 
you could access them in char,then translate into double. 
moreover,SQLiteDatabase is an alternative. 

0

如果要存儲在XML這個數據,就需要有一個DTD定義的元素和屬性,然後寫那些元件的方法和屬性。你通常會使用一個經過良好測試的庫,而不是自己開發。你需要確定你是否打算在SDN

順序或隨機(SAX或DOM)

Sun公司擁有優秀的Java實例訪問您的數據下面是對XML的一些很好的介紹材料:

IBM developerWorks中國:

Introduction to XML

C/C++ developers: Fill your XML toolbox

如果您沒有特定的XML需求,則需要考慮更簡單的可互換數據文件,例如JSONYAML

0

將座標存儲在csv(逗號分隔值)文件/列表中似乎是開銷最低的最簡單方法。只要你真的存儲長/緯度座標。

我會避免將它們存儲在XML文件中,除非您有充足的理由,例如從服務器發送/提取它,因爲解析XML文件會導致比簡單csv文件更大的開銷,這是簡單的split/join操作。

然而,如果座標是動態的,由用戶添加並經常更改,並可以有更多對座標比初始100,SQLite數據庫將你爲什麼不使用有更好的方式去

相關問題