2012-02-22 31 views
9

Tôi muốn thêm một tệp xml (có một số dữ liệu tĩnh liên quan đến ứng dụng của tôi) vào ứng dụng Android của tôi. Điều quan trọng là chúng tôi không thể thêm dữ liệu vào tệp string.xml.Cách và vị trí thêm xml tùy chỉnh vào ứng dụng Android của tôi?

Vào thời điểm ứng dụng được khởi chạy, nó sẽ tải tất cả dữ liệu tĩnh từ tệp xml vào cấu trúc dữ liệu của tôi.

Sự cố:
1. Làm cách nào để thêm xml vào ứng dụng Android của tôi bằng Eclipse?
2. Tôi nên thêm xml tùy chỉnh của mình ở đâu? (bên trong thư mục values HOẶC res thư mục HOẶC bất cứ nơi nào khác?)
3. Theo hiểu biết của tôi, chúng tôi phải viết một lớp trình phân tích cú pháp xml cho điều này, có đúng không hoặc có cách nào khác để tự động nhận giá trị xml được phân tích cú pháp không Android?

Trả lời

13

Thật dễ dàng.

  1. Đặt tệp xml của bạn vào \res\xml\ thư mục.
  2. Sử dụng XmlResourceParser để phân tích dữ liệu xml. Xem đoạn mã sau

    XmlResourceParser xrp = context.getResources().getXml(R.xml.your_file); 
    
    xrp.next(); 
    int eventType = xrp.getEventType(); 
    while (eventType != XmlPullParser.END_DOCUMENT) { 
        if (eventType == XmlPullParser.START_TAG 
          && xrp.getName().equalsIgnoreCase("your_target_tag")) { 
         String attrValue = xrp.getAttributeValue(null, 
           "attribute"); 
         int intValue = xrp.getAttributeIntValue(null, "order", 0); 
         break; 
        } 
        eventType = xrp.next(); 
    } 
    
2

Bạn nên tạo một thư mục thô trong thư mục res chẳng hạn. res/raw/yourfile.xml. để lưu trữ tệp xml tùy chỉnh của bạn. Và sau đó sử dụng kỹ thuật XML PullParser để phân tích cú pháp dữ liệu. xem liên kết bên dưới để biết thêm chi tiết.

Store static data in Android - custom resource?

+0

nơi để thêm hai xml tùy chỉnh một sẽ có văn bản tiếng anh và người kia sẽ có văn bản tiếng Pháp. – piks

Các vấn đề liên quan