我有这个XML,我想在android(android studio)中解析 . 有人请帮忙 . AM真的卡在这里 .
<?xml version="1.0" encoding="utf-8"?>
<message>
<isomsg direction="response">
<field id="0" value="ew8wqq"/>
<field id="2" value="kdlaka"/>
<field id="3" value="3388382"/>
<field id="4" value="9302"/>
<field id="7" value="02061212223721"/>
<field id="11" value="9029221"/>
<field id="12" value="38383"/>
<field id="24" value="0920202"/>
<field id="32" value="Texted"/>
<field id="37" value="10031503992006830"/>
<field id="41" value="93039292"/>
<field id="49" value="uehee"/>
<field id="56" value="938339939393"/>
<field id="68" value="Test: 5001115750001"/>
<field id="102" value="5001115750001"/>
<field id="27" value="001"/>
<field id="39" value="00"/>
<field id="48" value="Successful"/>
<field id="54" value="38288928383"/>
<field id="58" value="73838383"/>
</isomsg>
</message>
我真的很感激 . 非常感谢
请在下面找到我用来从Web服务获得响应的代码
SoapObject request = new SoapObject(“http://tempuri.org/ ", " PostRequest "); SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); envelope.dotNet = true; PropertyInfo pi = new PropertyInfo(); pi.setName(" IncomingXMLMessage”);
pi.setValue(GenerateXML());
request.addProperty(pi);
envelope.setOutputSoapObject(request);
HttpTransportSE httpTransportSE = new HttpTransportSE("http://10.100.10.10:9000/IWalletService.asmx");
SoapObject response = null;
httpTransportSE.debug=true;
httpTransportSE.call("http://tempuri.org/PostRequest", envelope);
response = (SoapObject)envelope.bodyIn;
int totalCount = response.getPropertyCount();
String resultString=httpTransportSE.responseDump;
Log.d("XML data ", resultString);
XmlPullParserFactory factory = XmlPullParserFactory
.newInstance();
factory.setNamespaceAware(true);
XmlPullParser parser = factory.newPullParser();
String uResultString=resultString.replaceAll(">", ">");
String uResultStringFinal=uResultString.replaceAll("<","<");
parser.setInput(new StringReader(uResultStringFinal));
2 回答
这是嵌套在
<message></message>
中的JPOS响应XML,而不是SOAP XML,看看JPOS如何解析:https://github.com/jpos/jPOS/blob/master/jpos/src/main/java/org/jpos/iso/packager/XMLPackager.java#L117
为了在Android中解析你的xml数据,你显然需要使用解析器 . 谷歌建议我自己发现XmlPullParser非常有用 . Google还为此here提供了一些示例代码 . 在这里解释一切只会与这个完全相同的问题的其他答案重复 . 如果Google足够了,您可以在网上搜索其他一些教程!