Android中将信息写入xml中

        // xml序列化器
        XmlSerializer serializer = Xml.newSerializer();
        File file = new File(Environment.getExternalStorageDirectory(),
                "test.xml");
        FileOutputStream fileOutputStream = null;
        try {
            fileOutputStream = new FileOutputStream(file);
            // 输出流的编码格式
            serializer.setOutput(fileOutputStream, "utf-8");
            // 设置xml文件的编码格式,
            /*
             * 第二个参数trues生成 tandalone='yes' false 则生成tandalone='no' 值 no 表示这个
             * XML 文档不是独立的而是依赖于外部所定义的一个 DTD. 值 yes 表示这个 XML
             * 文档是自包含的(self-contained).
             */
            serializer.startDocument("utf-8", true);
            //设置xml 命名空间和根元素  
            serializer.startTag(null, "Test");
            for (int i = 0; i < 10; i++) {
                serializer.startTag(null, "Info");
                serializer.attribute(null, "id", String.valueOf(i));
                serializer.startTag(null, "body");
                serializer.text("测试数据: " + TestEdit.getText() + i);
                serializer.endTag(null, "body");
                serializer.startTag(null, "body_1");
                serializer.text("测试数据: " + TestEdit.getText() + i);
                serializer.endTag(null, "body_1");
                serializer.endTag(null, "Info");
            }
            serializer.endTag(null, "Test");
            serializer.endDocument();
            fileOutputStream.flush();
            fileOutputStream.close();
            fileOutputStream = null;
            Toast.makeText(getApplicationContext(), "写入成功!", 0).show();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IllegalArgumentException e) {
            e.printStackTrace();
        } catch (IllegalStateException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }


你可能感兴趣的:(Android中将信息写入xml中)