- 浏览: 332166 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
xuanyuanxiaoxue:
...
Android - LayoutInflater -
柴兴博:
不错 多谢
Android 悬浮Activity并可拖动(访悬浮歌词) -
di1984HIT:
写的很好,我收藏一下。
java之动态代理模式(JDK和cglib) -
chinacssnj:
待测试,明天测,测试的结果发给大家
网络开发上传文件到服务器 -
fx_199182:
...
Android之MediaPlayer
package cn.itcast.service; import java.io.InputStream; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.URL; import java.util.HashMap; import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; import org.xmlpull.v1.XmlPullParser; import android.util.Xml; import cn.itcast.utils.StreamTool; public class MobileInfoService { private static String readSoapFile(InputStream inStream, String mobile) throws Exception{ byte[] data = StreamTool.readInputStream(inStream); String soapxml = new String(data); Map<String, String> params = new HashMap<String, String>(); params.put("mobile", mobile); return replace(soapxml, params); } public static String replace(String xml, Map<String, String> params)throws Exception{ String result = xml; if(params!=null && !params.isEmpty()){ for(Map.Entry<String, String> entry : params.entrySet()){ String name = "\\$"+ entry.getKey(); Pattern pattern = Pattern.compile(name); Matcher matcher = pattern.matcher(result); if(matcher.find()){ result = matcher.replaceAll(entry.getValue()); } } } return result; } public static String getMobileAddress(InputStream inStream, String mobile)throws Exception{ String soap = readSoapFile(inStream, mobile); byte[] data = soap.getBytes(); URL url = new URL("http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx"); HttpURLConnection conn = (HttpURLConnection)url.openConnection(); conn.setRequestMethod("POST"); conn.setConnectTimeout(5 * 1000); conn.setDoOutput(true);//如果通过post提交数据,必须设置允许对外输出数据 conn.setRequestProperty("Content-Type", "application/soap+xml; charset=utf-8"); conn.setRequestProperty("Content-Length", String.valueOf(data.length)); OutputStream outStream = conn.getOutputStream(); outStream.write(data); outStream.flush(); outStream.close(); if(conn.getResponseCode()==200){ return parseResponseXML(conn.getInputStream()); } return null; } private static String parseResponseXML(InputStream inStream) throws Exception{ XmlPullParser parser = Xml.newPullParser(); parser.setInput(inStream, "UTF-8"); int eventType = parser.getEventType();//产生第一个事件 while(eventType!=XmlPullParser.END_DOCUMENT){//只要不是文档结束事件 switch (eventType) { case XmlPullParser.START_TAG: String name = parser.getName();//获取解析器当前指向的元素的名称 if("getMobileCodeInfoResult".equals(name)){ return parser.nextText(); } break; } eventType = parser.next(); } return null; } }
package cn.itcast.mobile.address; import java.io.InputStream; import cn.itcast.service.MobileInfoService; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; public class MainActivity extends Activity { private EditText mobileText; private TextView addressView; private static final String TAG = "MainActivity"; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mobileText = (EditText)this.findViewById(R.id.mobile); addressView = (TextView)this.findViewById(R.id.address); Button button = (Button)this.findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String mobile = mobileText.getText().toString(); InputStream inStream = this.getClass().getClassLoader().getResourceAsStream("mobilesoap.xml"); try { addressView.setText(MobileInfoService.getMobileAddress(inStream, mobile)); } catch (Exception e) { Log.e(TAG, e.toString()); Toast.makeText(MainActivity.this, "查询失败", 1).show(); } } }); } }
发表评论
-
Android中AsyncTask的简单用法
2012-01-13 16:00 1168在开发Android移动客户端的时候往往要使用多线程来进行操 ... -
Android应用的自动升级、更新模块的实现 .
2011-11-16 14:01 679http://www.eoeandroid.com/threa ... -
一个APK反编译利器Apktool
2011-11-16 13:54 1591一个APK反编译利器Apktool APK 本地化 ... -
自定义Android标题栏TitleBar布局
2011-11-14 14:13 1261很多网友发现自己Android程序的标题栏TitleBar区域 ... -
Android GPS获取地理位置 .
2011-11-14 14:11 863import android.app.Activity; i ... -
android ListView详解
2011-11-14 13:48 1064在android开发中ListView是比较常用的组件,它以列 ... -
Android之Content provider 详解
2011-11-14 13:35 2480Android是如何实现应用程序之间数据共享的?一个应用程序可 ... -
Android源码地址
2011-11-12 19:14 1055http://blog.csdn.net/ilittleone ... -
android之File
2011-11-11 22:39 20111:Fileservice package cn.itcas ... -
Android知识补漏
2011-11-09 22:33 01:AndroidManifiest.xml < ... -
深入剖析Android消息机制
2011-11-09 14:13 969在Android中,线程内部或者线程之间进行信息交互时经常会使 ... -
Android之Handler详解(四)
2011-11-09 14:00 1292d、自己创建新的线程,然后在新线程中创建Looper,主线程调 ... -
Android之Handler详解(三)
2011-11-09 13:58 1370c、将消息队列绑定到子线程上,主线程只管通过Handl ... -
Android之Handler详解(二)
2011-11-09 13:54 1669二:sendMessage版本的Handl ... -
Android之Handler详解(一)
2011-11-09 13:22 2295一个Handler允许你发送和处理消息(Message)以及 ... -
关于StartActivityForResult方法的使用
2011-10-31 17:11 1108根据方法名可知 这个方法是要得到启动后的Activity返回的 ... -
Android 悬浮Activity并可拖动(访悬浮歌词)
2011-10-24 16:23 2110天天动听, 这款Android手机上的音乐播放器,相信不少朋友 ... -
Android GWES
2011-10-24 16:13 1204第八章 Android GWES 8.1 View Syst ... -
Android系统服务-WindowManager
2011-10-24 16:10 1452WindowManager是Android中一个重要的服务 ... -
http通信
2011-10-15 17:31 1103HTTP(HyperText Transfer Proto ...
相关推荐
本主题的核心是"拼接XML调用WebService",这通常指的是通过构建XML字符串来构造请求,然后发送该请求到一个Web Service接口以获取响应。以下是对这个过程的详细解释: 1. **XML基础**:XML是一种结构化标记语言,它...
通过整合这些元素,我们可以构建一个Web应用程序,该应用程序能够通过POST方式调用WebService,传递参数,并解析返回的XML数据,以便在页面上展示。这涉及到了客户端与服务器端的交互,XML数据的处理以及ASP.NET Web...
ETL KETTLE 中利用Httpclient 调用webservice接口获取XML数据,并解析XML 数据。 完整的KTR实例
Web服务是一种通过HTTP协议传输数据的应用程序接口(API)。SOAP是基于XML的协议,用于在Web服务之间传递结构化信息。它定义了消息格式、错误处理和协议绑定。 在Java中,我们通常使用Apache CXF或JAX-WS(Java API...
POST是HTTP协议中的一个请求方法,用于向服务器发送数据。在调用WebService时,POST方法可以承载请求参数,将其封装在请求体中发送到服务端。 1. **构建HTTP请求** 在Java中,可以使用`java.net.URL`、`java.net....
在本场景中,我们将探讨如何通过WebService来调用数据库中的数据并以XML格式进行返回。 1. **XML基础**:XML全称为Extensible Markup Language,它是一种自定义标记语言,用于结构化地表示数据。XML文档由元素、...
webservice远程调用,返回String数据并生成xml文件到本地工程,在通过SAX解析器把数据解析出来。这是webservice应用的一个简单的例子。根据该例子的思想,可以实现很多功能了。例如把client工程的sayHello方法改为...
Web Service是一种基于HTTP协议的远程调用技术,允许不同系统间进行数据交换。在C#中,可以使用ASP.NET的`System.Web.Services`命名空间创建Web Service。以下创建一个简单的WebService接口,用于接收和返回XML数据...
Webservice 通常使用 SOAP(Simple Object Access Protocol)协议来传输数据,使用 WSDL(Web Service Description Language)来描述服务接口。Webservice 的优点包括跨平台、跨语言、灵活性高、可重用性强等。 二...
WebService提供了通过HTTP协议进行远程过程调用的能力,使得不同应用程序之间能够进行数据交换与通信。其中,HttpClient作为一种常用的Java库,被广泛用于发送HTTP请求并接收响应。本文将详细介绍如何使用HttpClient...
首先,你可以通过HTTP请求获取Web Service的XML响应,然后解析这个响应并提取所需数据。这种方式适合简单数据交换,但不适用于复杂的数据结构。 2. **使用.NET Framework的存储过程**: SQL Server 2005及以后版本...
"Delphi调用WebService的实例(非常经典)" 在 Delphi 中调用 WebService 是一种非常经典的实例。下面我们将详细介绍 Delphi 调用 WebService 的相关知识点。 首先, Delphi 调用 WebService 需要了解基本概念。...
在现代软件开发中,WebService作为一种基于HTTP协议的应用程序接口(API),广泛应用于不同系统之间的数据交换与服务调用。本篇文章将根据提供的代码示例,详细介绍如何通过WebService接口接收XML格式的数据以及字符串...
在本主题中,我们将深入探讨如何通过Web服务提交XML数据以及SOAP(Simple Object Access Protocol)协议的使用。 XML(Extensible Markup Language)是Web服务中常用的数据交换格式,它是一种自描述、结构化的文本...
接着,根据`README.md`的指示,理解并运行项目,查看如何通过封装好的接口调用Web Service。这可能涉及到解析返回的SOAP响应,以及处理可能出现的异常情况。最后,如果想要扩展或优化这个示例,可以深入研究Hutool的...
WebService是一种基于Web的、松耦合的服务,它使用标准的HTTP协议进行通信,并通过XML(eXtensible Markup Language)进行数据交换。在本篇文章中,我们将深入探讨如何在VC++环境中实现对WebService的调用。 首先,...
在C#中,Web服务(WebService)是一种基于HTTP协议的通信方式,用于不同应用程序之间的数据交换。本篇文章将深入探讨如何使用C#和Visual Studio 2019(VS2019)来创建一个WebService,使其能够返回指定的XML格式。...
调用WebService通常涉及到SOAP(Simple Object Access Protocol)消息,这是一种基于XML的协议用于在Web上传输信息。 在Java中调用带有JSON参数的WebService,可以按照以下步骤进行: 1. 定义WebService服务端代码...
WebService可以通过HTTP协议进行通信,并且通常使用XML作为数据格式。WebService的一个主要优势在于它的平台无关性,这意味着无论客户端和服务器端采用何种编程语言或操作系统,都可以轻松地进行交互。 #### 三、...
终于调通安卓调用Webservice,传参并解析XML的样例,使用工具:Android Studio和Eclipse.Eclipse启动WebServer,Android Studio进行Application编码调试。两个工程文件都在压缩包中。喜极而泣。。。