Android XmlSerializer - 'at sign'(@)的表示

时间:2012-01-16 13:45:28

标签: java android xml xml-serialization android-xml

我使用以下代码创建XML:

    XmlSerializer serializer = Xml.newSerializer();
    StringWriter writer = new StringWriter();
    try 
    {
        serializer.setOutput(writer);
        serializer.startDocument("UTF-8", true);
        serializer.startTag( "", "email" );
        serializer.text( "peter@gmail.com" );
        serializer.endTag( "", "email" );
        serializer.endDocument();
        String xml = writer.toString();

    } 
    catch (Exception e) 
    {

    }

当这样做时,xml变量将保存XML字符串,但 at sign(@)被转换为其数字表示(@)...任何人都知道如何禁用它?为什么这样做?我需要UTF-8编码的XML,因此 @ 是有效的符号......

所以XML结果是:

<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
  <email>peter&#64;gmail.com</email>

但我需要

<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
  <email>peter@gmail.com</email>

稍后添加:

似乎这是Android 2.1(以及其他可能)的错误,因为在较新的Android操作系统版本上它运行良好...


0 个答案:

没有答案