我需要将 List 中的数据转换为 XML 字符串。目前我在android中使用以下方法作为转换方法,
private String writeXml(List<DataItem> item)
{
XmlSerializer serializer = Xml.newSerializer();
StringWriter writer = new StringWriter();
try {
serializer.setOutput(writer);
serializer.startDocument("UTF-16",null);
serializer.startTag("", "MainData");
serializer.startTag("", "Data");
for (DataItem in: item)
{
serializer.startTag("", "Key");
serializer.text(in.getKey());
serializer.endTag("", "Key");
serializer.startTag("", "Value");
serializer.text(in.getValue());
serializer.endTag("", "Value");
}
serializer.endTag("", "Data");
serializer.endTag("", "MainData");
serializer.endDocument();
System.out.println(writer.toString());
return writer.toString();
} catch (Exception e) {
throw new RuntimeException(e);
}
}
我在 C# 中见过这种方法
XmlSerializer serializer = new XmlSerializer(typeof(List<DataItem>));
StringWriter sw = new StringWriter();
XmlSerializerNamespaces ns = new XmlSerializerNamespaces();
ns.Add("","");
serializer.Serialize(sw, tempdataitems,ns);
form.AddField("EX" + i , sw.ToString());
但是在尝试这个时它显示
Syntax error on token ">", Expression expected after this token
在......的最后
new XmlSerializer(typeof(List<DataItem>));
是否可以在android中使用相同的方法?或者还有其他方法可以进行相同的转换吗?
提前致谢