下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、北京传智播客教育 ,北京传智播客教育 ,向Internet发送xml数据,利用HttpURLConnection对象,我们可以向网络发送xml数据. StringBuilder xml = new StringBuilder(); xml.append(); xml.append(); xml.append(中国); xml.append(); byte xmlbyte = xml.toString().getBytes(UTF-8); URL url = new URL(http:/localhost:8080/itcast/contanctmanage.do?method=readxml)
2、; HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setConnectTimeout(5* 1000); conn.setDoOutput(true);/允许输出 conn.setUseCaches(false);/不使用Cache conn.setRequestMethod(POST); conn.setRequestProperty(Connection, Keep-Alive);/维持长连接 conn.setRequestProperty(Charset, UTF-8); conn.setR
3、equestProperty(Content-Length, String.valueOf(xmlbyte.length); conn.setRequestProperty(Content-Type, text/xml; charset=UTF-8); DataOutputStream outStream = new DataOutputStream(conn.getOutputStream(); outStream.write(xmlbyte);/发送xml数据 outStream.flush(); if (conn.getResponseCode() != 200) throw new R
4、untimeException(请求url失败); InputStream is = conn.getInputStream();/获取返回数据 String result = readAsString(is, UTF-8); outStream.close();,北京传智播客教育 ,北京传智播客教育 ,多线程断点续传下载,使用多线程下载文件可以更快完成文件的下载,多线程下载文件之所以快,是因为其抢占的服务器资源多。如:假设服务器同时最多服务100个用户,在服务器中一条线程对应一个用户,100条线程在计算机中并非并发执行,而是由CPU划分时间片轮流执行,如果A应用使用了99条线程下载文件,那么
5、相当于占用了99个用户的资源,假设一秒内CPU分配给每条线程的平均执行时间是10ms,A应用在服务器中一秒内就得到了990ms的执行时间,而其他应用在一秒内只有10ms的执行时间。就如同一个水龙头,每秒出水量相等的情况下,放990毫秒的水 肯定比放10毫秒的水要多。 多线程下载的实现过程: 1首先得到下载文件的长度,然后设置本地文件 的长度。 HttpURLConnection.getContentLength(); RandomAccessFile file = new RandomAccessFile(QQWubiSetup.exe,rwd); file.setLength(filesiz
6、e);/设置本地文件的长度 2根据文件长度和线程数计算每条线程下载的数据长度和下载位置。如:文件的长度为6M,线程数为3,那么,每条线程下载的数据长度为2M,每条线程开始下载的位置如上图所示。 3使用Http的Range头字段指定每条线程从文件的什么位置开始下载,下载到什么位置为止,如:指定从文件的2M位置开始下载,下载到位置(4M-1byte)为止,代码如下: HttpURLConnection.setRequestProperty(Range, bytes=2097152-4194303); 4保存文件,使用RandomAccessFile类指定每条线程从本地文件的什么位置开始写入数据。
7、RandomAccessFile threadfile = new RandomAccessFile(QQWubiSetup.exe ,rwd); threadfile.seek(2097152);/从文件的什么位置开始写入数据,北京传智播客教育 ,北京传智播客教育 ,为应用添加新的Activity,第一步:新建一个继承Activity的类,如:NewActivity public class NewActivity extends Activity Override protected void onCreate(Bundle savedInstanceState) super.onCrea
8、te(savedInstanceState); /这里可以使用setContentView(R.layout.xxx)显示某个视图. 第二步:需要在功能清单AndroidManifest.xml文件中添加进上面Activity配置代码(红色部分): . . android:name属性值的前面加了一个点表示NewActivity是当前包cn.itcast.action下的类,如果类在应用的当前包下,可以省略点符号,如果类在应用的子包下必须加点,如:NewActivity类在cn.itcast.action.user包下可以这样写:,北京传智播客教育 ,北京传智播客教育 ,打开新的Activit
9、y ,不传递参数,在一个Activity中可以使用系统提供的startActivity(Intent intent)方法打开新的Activity,在打开新的Activity前,你可以决定是否为新的Activity传递参数: 第一种:打开新的Activity,不传递参数 public class MainActivity extends Activity Override protected void onCreate(Bundle savedInstanceState) . Button button =(Button) this.findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener()/点击该按钮会打开一个新的Activity public void onClick(View v)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江苏省盐城滨海县联考2027届化学九年级第一学期期中质量检测模拟试题含解析
- 2027届浙江省金华市义乌市七校联考九上化学期末经典试题含解析
- 2027届江西省赣州市信丰县九年级物理第一学期期末学业水平测试试题含解析
- 2027届浙江省舟山市名校化学九上期中预测试题含解析
- 河北省承德兴隆县联考2027届物理九上期末达标测试试题含解析
- 江苏省南京市求真中学2027届化学九上期中质量跟踪监视模拟试题含解析
- 福建省光泽县2027届九年级化学第一学期期中质量检测模拟试题含解析
- 2026湖北恩施州咸丰县残疾人联合会公益性岗位招聘1人模拟试卷【名校卷】附答案详解
- 2026浙江丽水市青田县农业农村局公开招聘编外人员(船工)1人模拟试卷【模拟题】附答案详解
- 2026云南西双版纳州人力资源和社会保障局招募银龄技师16人(第二期)考前冲刺密卷附完整答案详解(有一套)
- 2026年7月4日广东初级注安《建筑施工安全》真题卷
- 2026湖北黄石市阳新县事业单位统一招聘107人考试参考题库及答案详解
- 2026年新疆事业单位招聘考试《职业能力倾向测验》真题
- 2026年天津卷高考语文作文全新真题解读及五篇范文
- 2026西藏拉萨市市直机关事业单位遴选(招聘)公务员(工作人员)19人考试备考试题及答案详解
- 2026年高考全国1卷语文高考真题含答案
- BIM-建筑工程计量与计价 课件 第1、2章 工程造价概述、建筑面积计算 (2023 年规范 )
- 2026年军队文职营房管理面试面试宝典
- 国企工程管理岗笔试试题及答案
- 安徽宣城市2025-2026学年高一上学期期末检测物理试题(原卷版)
- 2026中信证券IT数据岗笔试题及答案考点速记版
评论
0/150
提交评论