Android怎么把数据转成xml格式通过Socket发送

比如:String a=100;String b=100;想转成:<zuobiao><a>100</a><b>100</b></zuobiao>发送到服务端
2026年09月23日 10:41
有2个网友回答
网友(1):

public static String CreateXMLDoc() throws Exception{
ByteArrayOutputStream baos=new ByteArrayOutputStream();
XmlSerializer xml=Xml.newSerializer();
xml.setOutput(baos, "UTF-8");
xml.startDocument("UTF-8", null);

xml.startTag(null, "zuobiao");

xml.startTag(null, "a");
xml.text("100");
xml.endTag(null, "a");

xml.startTag(null, "b");
xml.text("100");
xml.endTag(null, "b");

xml.endTag(null, "zuobiao");
xml.endDocument();
byte[] xmlData=baos.toByteArray();
String xmlString=new String(xmlData,"UTF-8");
baos.flush();
baos.close();
baos=null;
return xmlString;
}

最后,将这个函数返还的字符串转换成字节数组,用socket发送出去就行了。具体发送你自己发送就行了(或者你也可以直接返回xmlData字节数组,然后发送出去也行,具体看你定义的收发规则)。

网友(2):

就这样传,还不如用json格式,更省流量。定义一个类Zuobiao,里面包含a,b,然后转成json格式字符串通过socket发送,服务器端解析json字符串成Zuobiao对象就好了。