Как я могу записать в файл XML?

1

У меня есть файл config.xml в папке с ресурсами. Для этого я использую следующий код:

public static String readAppConfigKey(Context context, String section,
        String key) {
    String value = "";
    AssetManager assetManager = context.getAssets();

    InputStream istr;
    try {
        istr = assetManager.open("config.xml");
        XmlPullParserFactory factory;
        factory = XmlPullParserFactory.newInstance();
        factory.setNamespaceAware(true);
        XmlPullParser xmlParser = factory.newPullParser();
        xmlParser.setInput(istr, "UTF-8");

        String strPrevElement = "";
        String strElement = "";
        String strKey = "";

        xmlParser.next();
        int eventType = xmlParser.getEventType();
        while (eventType != XmlResourceParser.END_DOCUMENT) {
            if (eventType == XmlResourceParser.START_TAG) {
                if (xmlParser.getName().compareTo(strElement) != 0) {
                    // after any change
                    strPrevElement = strElement;
                    strElement = xmlParser.getName();
                }
                strKey = xmlParser.getAttributeValue(null, "key");
                if (strPrevElement.compareTo(section) == 0
                        && strKey != null && strKey.compareTo(key) == 0) {
                    value = xmlParser.getAttributeValue(null, "value");
                    return value;
                }
            }
            eventType = xmlParser.next();
        }
    } catch (XmlPullParserException e) {

    } catch (IOException e) {

    }
    return value;
}

Как я могу писать в нем с помощью XmlPullParser?

Благодаря,

  • 0
    не могли бы вы проверить мой ответ.
Теги:
xmlpullparser

1 ответ

2
Лучший ответ

Я не думаю, что вы можете написать файл в папке с ресурсами. Я думаю, вам придется скопировать его на SD-карту и прочитать и написать там.

Кроме того, XmlPullParser читает только XML, он не пишет. Посмотрите на это руководство по изменению XML:

Как изменить XML файл в Java

  • 0
    SAXBuilder не доступен для Android.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню