文档章节

Android下载并打开pdf文件

hejunbinlan
 hejunbinlan
发布于 2015/02/26 17:14
字数 202
阅读 138
收藏 1

System.out.println("我点击了按钮");

      String urlString = "http://public.dhe.ibm.com/common/ssi/ecm/en/wsd14109usen/WSD14109USEN.PDF";

      try {

        URL url = new URL(urlString);

        HttpURLConnection connection = (HttpURLConnection) 

            url.openConnection();

        connection.setRequestMethod("GET");

        connection.setDoInput(true);

        connection.setDoOutput(true);

        connection.setUseCaches(false);

        connection.setConnectTimeout(5000);

        connection.setReadTimeout(5000);

        //实现连接

        connection.connect();

        

        System.out.println("connection.getResponseCode()="+connection.getResponseCode());

        if (connection.getResponseCode() == 200) {

          InputStream is = connection.getInputStream();

          //以下为下载操作

          byte[] arr = new byte[1];

          ByteArrayOutputStream baos = new ByteArrayOutputStream();

          BufferedOutputStream bos = new BufferedOutputStream(baos);

          int n = is.read(arr);

          while (n > 0) {

            bos.write(arr);

            n = is.read(arr);

          }

          bos.close();

          String path = Environment.getExternalStorageDirectory()

              + "/download/";

          String[] name = urlString.split("/");

          path = path + name[name.length - 1];

          System.out.println("name="+name);

          System.out.println("path="+path);

          File file = new File(path);

          FileOutputStream fos = new FileOutputStream(file);

          fos.write(baos.toByteArray());

          fos.close();

          //关闭网络连接

          connection.disconnect();

          System.out.println("下载完成");

                if (file.exists()) {

              System.out.println("打开");

                  Uri path1 = Uri.fromFile(file);

                  Intent intent = new Intent(Intent.ACTION_VIEW);

                  intent.setDataAndType(path1, "application/pdf");

                  intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

  

                  try {

                      startActivity(intent);

                  } 

                  catch (ActivityNotFoundException e) {

                  System.out.println("打开失败");

                  }

              }

        }

      } catch (IOException e) {

        // TODO: handle exception

        System.out.println(e.getMessage());

      }



本文转载自:http://geoffrey-qiao.iteye.com/blog/2051266

共有 人打赏支持
hejunbinlan
粉丝 41
博文 596
码字总数 21569
作品 0
浦东
高级程序员
私信 提问
phonegap附件下载及打开附件

【原创】转载请注明出处! 在开发web app并且使用phonegap的情况下,附件下载着实是一件令人头疼的事,什么window.open或者window.location.href在webview中都不起作用,网上查了许久,没有一...

bluecoffee
2013/10/17
0
8
phonegap 下载pdf文件后怎么在移动端打开并且阅读啊

请教大神急需帮助!!!!!!! 利用 phonegap 在安卓系统上创建了一个文件夹,在服务器上请求pdf下载了一个pdf文件并且保存到了文件夹里 var filePath = window.appRootDir.fullPath +"/T...

fengdedaijiaba
2015/07/24
352
0
android用于打开各种文件的intent,包括以下文件PDF,PPT,WORD,EXCEL...

import android.app.Activity; import android.content.Intent; import android.net.Uri; import android.net.Uri.Builder; import java.io.File; import android.content.Intent; //自定义a......

汤姆521
2012/10/22
0
0
Google让Chromebook用户在Chrome OS中管理所有Android文件

Google Chromium开发者FrançoisBeaufort透露,Chrome操作系统团队正计划在Files应用中让Chromebook设备管理所有的Android文件。被称为“Android文件”的新功能已在Chrome OS Dev频道中实施,...

稿源:cnBeta.COM
2018/06/04
0
0
优亿移动开放日第十五期:优亿开发行业数据报告

优亿开发者社区,是中国最专业的安卓开发者社区。 致力于为国内安卓开发者提供从技术学习、到产品运营、到求职发展、到行业数据传播的一系列服务。 本期沙龙活动,优亿开发整理了行业众多服务...

长平狐
2012/08/09
72
0

没有更多内容

加载失败,请刷新页面

加载更多

全面理解Java内存模型(JMM)及volatile关键字

理解Java内存区域与Java内存模型 Java内存区域 Java虚拟机在运行程序时会把其自动管理的内存划分为以上几个区域,每个区域都有的用途以及创建销毁的时机,其中蓝色部分代表的是所有线程共享的...

亭子happy
12分钟前
1
0
Prometheus监控mysql实例--centos7安装mysql_exporter

目录 概述 环境准备 普罗米修斯简介 mysql安装 mysqld_exporter安装 启动参数列表 概述 prometheus(普罗米修斯) 是一个开源系统监控和报警工具包,许多公司和组织都采用了Prometheus,该项目...

java_龙
17分钟前
3
0
拥有2000家门店,他如何晋升为服装界的新宠?

摘要: —— iwarm3.0加热组件、碳纳米管膜炎、管状石墨结构体...你看到并不是一款高科技电子产品,这是快鱼服饰在这个冬天推出的黑科技产品 - 智能温控羽绒服。 在竞争激烈的服装行业,快鱼...

阿里云云栖社区
19分钟前
2
0
不忘初心 砥砺前行-智和信通2018年年会报道

1月18日,智和信通以“不忘初心 砥砺前行”为主题的2018总结会议暨2019年年会在京召开。年会以总经理李少龙的讲话为开场,充分肯定了全体员工2018年的工作和成绩,并表达了公司产品智和网管平...

智和网管平台
28分钟前
1
0
NGINX api网关

以谁为师
29分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部