0

我想将一个单维双精度数组从 VB.NET Web 服务传递给 Android 应用程序。

请告诉我该怎么做?

4

1 回答 1

1
public ArrayList<HashMap<String, String>> getlogindata(String Tname,
            String col) {
        try {

            hmALData = new ArrayList<HashMap<String, String>>();

            SoapObject request = new SoapObject(NAMESPACE,
                    SOAP_METHOD_GETDATATBL);

            String ttnm = Tname.trim();

            request.addProperty("TName", ttnm);
            request.addProperty("ColumnNameStr", "*");

            SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
                    SoapEnvelope.VER11);

            envelope.dotNet = true;

            envelope.setOutputSoapObject(request);

            HttpTransportSE aht = new HttpTransportSE(URL, 60000);

            aht.call(SOAP_ACTION_GETDATATBL, envelope);

            SoapObject response = (SoapObject) envelope.bodyIn;

            System.out.println("Response : " + response);

            System.out
                    .println("ResponseCount : " + response.getPropertyCount());

            SoapObject con = (SoapObject) response.getProperty(0);

            System.out.println("REsult One: " + con.toString());

            SoapObject con1 = (SoapObject) con.getProperty(1);

            System.out.println("REsult One1: " + con1.toString());

            if (con1.toString().trim().equals("anyType{}")) {
                return hmALData;
            }
            SoapObject con2 = (SoapObject) con1.getProperty(0);

            System.out.println("REsult One2: " + con2.toString());
            System.out.println("one2 Count: " + con2.getPropertyCount());

            for (int i = 0; i < con2.getPropertyCount(); i++) {

                SoapObject con3 = (SoapObject) con2.getProperty(i);

                System.out.println("REsult Three: " + con3.toString());

                hmData = new HashMap<String, String>();
                if (con3 instanceof SoapObject) {
                    SoapObject getAll = (SoapObject) con3;


                    hmData.put("LoginId", getAll.getProperty("LoginId")
                            .toString());
                    hmData.put("Password", getAll.getProperty("Password")
                            .toString());


                    }

                hmALData.add(hmData);
            }

            return hmALData;
        } catch (SocketTimeoutException e) {
            return hmALData;
        }

        catch (IOException e) {
            System.out.println("IOException : " + e);
            e.printStackTrace();

        } catch (XmlPullParserException e) {
            System.out.println("XMLPullParserException : " + e);
            e.printStackTrace();
        } catch (RuntimeException e) {
            e.printStackTrace();
        }

        return hmALData;
    }
于 2013-06-06T04:51:43.390 回答