У меня есть этот XML, который я хочу разобрать в android (android studio). Кто-нибудь, пожалуйста, помогите. AM действительно застрял здесь.Parse ISO8583 XML в android (с использованием студии android)
<?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>
Я по-настоящему признателен. Большое спасибо
Ниже Вы найдете код, который я использую, чтобы получить ответ от веб-сервиса
SoapObject запрос = новый SoapObject («http://tempuri.org/», „PostRequest“); SoapSerialization Конверт конверт = новый 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));
Я посмотрел на объяснения, данные и образцы, и я не могу показаться, чтобы связать. Я не могу понять. Crosswind, пожалуйста, помогите – Turbo
получить этот XML из веб-сервиса и преобразовать его в строку. response = (SoapObject) envelope.bodyIn; int totalCount = response.getPropertyCount(); Строка resultString = httpTransportSE.responseDump; поэтому у меня возникла проблема с отправкой этого значения в этот метод private String readFields (парсер XmlPullParser), ...... который принимает только парсер. Как преобразовать эту строку xml в парсер? – Turbo
Я честно не знаю, что вы там делаете. Обычно вы создаете свой парсер и т. Д., А затем вводите ввод в этот парсер, который либо берет Reader, либо InputStream. Может быть, мой пример поможет вам - https://github.com/Crosswind/Vertretungsplan/blob/master/app/src/main/java/de/gymnasium_beetzendorf/vertretungsplan/XMLParser.java Где именно вы получаете xml? Загруженный файл? – Crosswind