Android 使用XmlSerializer生成xml文件

在Android开发中,我们时常要用到xml文件。

xml作为一种数据载体,在数据传输中发挥着重要的作用,而且它可读性比较强。

下面给出在Android开发中使用XmlSerializer类生成一个简单的xml文件。

 /**

     * 创建xml文件

     */

    private void createXmlFile() {

        XmlSerializer xmlSerializer = null;

        FileOutputStream fileOutputStream = null;

        try {

            //获取xmlSerializer

            xmlSerializer = Xml.newSerializer();

            File file = new File(Environment.getExternalStorageDirectory(), "wuyouXML");

            fileOutputStream = new FileOutputStream(file);

            String encoding = "utf-8";

            xmlSerializer.setOutput(fileOutputStream, encoding);

            xmlSerializer.startDocument(encoding, true);

            //根节点开始

            xmlSerializer.startTag(null, "books");



            //内容结点

            xmlSerializer.startTag(null, "book");

            xmlSerializer.attribute(null, "id", "1");

            xmlSerializer.text("java网络编程");

            xmlSerializer.endTag(null, "book");



            //内容结点

            xmlSerializer.startTag(null, "book");

            xmlSerializer.attribute(null, "id", "2");

            xmlSerializer.text("head first java");

            xmlSerializer.endTag(null, "book");



            //内容结点

            xmlSerializer.startTag(null, "book");

            xmlSerializer.attribute(null, "id", "3");

            xmlSerializer.text("java编程思想");

            xmlSerializer.endTag(null, "book");



            //根节点结束

            xmlSerializer.endTag(null, "books");

            xmlSerializer.endDocument();

        } catch (Exception e) {

            e.printStackTrace();

        } finally {

            if (fileOutputStream != null) {

                try {

                    fileOutputStream.close();

                } catch (IOException e) {

                    e.printStackTrace();

                }

            }

        }

    }

这样,一个简单的xml文件就产生了。它的内容如下:

<?xml version='1.0' encoding='utf-8' standalone='yes' ?>

<books>

    <book id="1">java网络编程</book>

    <book id="2">head first java</book>

    <book id="3">java编程思想</book>

</books>

至于怎样去解析它,我们不久会进行介绍。

你可能感兴趣的:(Serialize)