`
hilary3113
  • 浏览: 265902 次
  • 性别: Icon_minigender_1
  • 来自: 邯郸
社区版块
存档分类
最新评论

android 文件下载到SD卡中

阅读更多

我下载文件时,需要访问网络,在这里,添加了个线程

package com.action;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;

import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class Main extends Activity {
	private Button btn;

	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);

		btn = (Button) findViewById(R.id.btn1);
		btn.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				new Thread(runnable).start();
			}
		});
	}

	private Runnable runnable = new Runnable() {
		@Override
		public void run() {
			try {
				String fileName = Environment.getExternalStorageDirectory()
						.getAbsolutePath()
						+ "/img3.jpg";
				System.out.println("fileName:" + fileName);
				String url = "http://hiphotos.baidu.com/%B7%E5%B7%E5%CD%C3/pic/item/769ab3eec5ce730c2cf534a1.jpg";
				URL Url = new URL(url);
				URLConnection conn = Url.openConnection();
				conn.connect();
				InputStream is = conn.getInputStream();
				int fileSize = conn.getContentLength();
				if (fileSize <= 0) { // 获取内容长度为0
					throw new RuntimeException("无法获知文件大小 ");
				}
				if (is == null) { // 没有下载流
					throw new RuntimeException("无法获取文件");
				}
				FileOutputStream fos = new FileOutputStream(fileName); // 创建写入文件内存流,通过此流向目标写文件
				byte buf[] = new byte[1024];
				int downLoadFilePosition = 0;
				int numread;
				while ((numread = is.read(buf)) != -1) {
					fos.write(buf, 0, numread);
					downLoadFilePosition += numread;
				}
				is.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	};
}

 下载文件时,需要访问网络,需要配置访问网络权限

分享到:
评论

相关推荐

    android 下载文件到SD卡

    通过以上步骤,你可以实现一个完整的Android文件下载功能,让应用具备将网络资源保存到SD卡的能力。在实际开发中,可能还需要考虑更多细节,如下载速度限制、多线程下载、网络状况判断等,以提供更好的用户体验。

    android 存储文件到sd卡中

    在Android平台上,将文件存储到SD卡中是应用程序常见的需求之一。这主要涉及到Android的文件系统、权限管理以及外部存储的使用。以下是一些关于如何在Android中存储文件到SD卡的关键知识点: 1. **Android文件系统*...

    android读取sd卡中MP3文件

    在Android平台上,开发人员经常需要处理与媒体文件交互的任务,比如读取SD卡中的MP3音乐文件。这个过程涉及到文件系统的操作、权限管理以及多媒体数据的处理。以下是一些关于如何在Android中读取SD卡中MP3文件的关键...

    android:assets下的文件复制到SD卡

    在Android开发中,有时我们需要将应用内部的资源文件,如图片、文本或配置文件等,复制到外部存储(如SD卡)以便于后续的操作,比如读取大文件以减轻内存负担,或者创建用户可访问的数据目录。`android:assets`是...

    android中将下载的mp3文件存放到虚拟sd卡中

    本篇文章将详细介绍如何在Android中将下载的MP3文件存放到虚拟SD卡中。 首先,理解Android的存储权限至关重要。自Android 6.0(API级别23)开始,应用需要在运行时请求`WRITE_EXTERNAL_STORAGE`和`READ_EXTERNAL_...

    android中复制资源文件中的数据库文件到sd卡或内存源码

    在Android开发中,有时我们需要将预置的数据库文件与应用一起发布,并在应用程序首次启动时将其复制到外部存储(如SD卡)或内部存储(内存)中,以便于后续的操作和使用。这样的需求通常出现在那些需要提供初始数据...

    Android 之 将RAW资源文件写入SD卡工具类

    在Android开发中,有时我们需要将应用内部的RAW资源文件复制到外部存储(如SD卡)以便于用户访问或保存数据。这个"Android之将RAW资源文件写入SD卡工具类"是一个实用的功能,可以帮助开发者轻松完成这个任务。下面将...

    Android 写文件到sd卡

    在Android系统中,将文件写入SD卡是一个常见的任务,特别是在开发涉及数据存储或资源管理的应用时。Android的安全模型对存储权限有严格的控制,因此在Android应用中访问外部存储(如SD卡)需要遵循特定的步骤。以下...

    Android代码-文件夹的创建将raw中文件放到SD卡中将assets中文件保存到SD卡中压缩包的解压文件的删除功能.rar

    这个压缩包文件"Android代码-文件夹的创建将raw中文件放到SD卡中将assets中文件保存到SD卡中压缩包的解压文件的删除功能.rar"包含了几个关键的Android文件操作知识点。下面我们将详细探讨这些内容。 首先,让我们从...

    android读取sd卡中音乐文件列表

    ### Android读取SD卡中音乐文件列表 在Android开发中,常常需要实现的功能之一就是读取设备中的音乐文件。这通常用于音乐播放器类的应用程序,以便用户可以浏览并选择他们想要播放的歌曲。本文将详细介绍如何通过...

    android demo,sd卡文件存储和data下文件存储。

    在使用SD卡存储时,需要注意权限问题。自Android 6.0(API级别23)以来,应用需要在运行时请求`WRITE_EXTERNAL_STORAGE`和`READ_EXTERNAL_STORAGE`权限。 **2. data下文件存储** 内部data目录下的文件存储主要用于...

    android 读取和存储sd卡

    在Android系统中,读取和存储SD卡是应用程序与外部存储交互的重要部分,尤其是在处理大量数据或者需要离线可用内容时。本示例项目“StorageManageDemo”将帮助开发者了解如何在Android应用中有效地实现这一功能。...

    android对文件和sd卡的各种操作

    Android中的文件路径有两种类型:内部存储路径和外部存储路径(即SD卡)。内部存储路径通常用于保存应用私有的数据,外部存储则用于共享数据或大文件。内部存储路径可以通过`getFilesDir()`或`getCacheDir()`获取,...

    把sd卡中的文件显示到ListView中

    在Android系统中,SD卡是用于扩展设备存储空间的一个重要组成部分,它允许用户存储大量数据,如音乐、图片、视频等。在这个特定的项目中,我们的目标是将SD卡中的MP3文件显示在一个ListView中。ListView是Android UI...

    Android保存文件到SD卡

    在Android系统中,将文件保存到SD卡是应用程序常见的需求之一,特别是在处理大量数据或多媒体文件时。Android提供了多种方式来实现这一功能,包括使用Java I/O流、Android的File类以及ContentProvider。下面我们将...

    Android sd卡音频文件列表显示+歌曲播放

    综上所述,"Android sd卡音频文件列表显示+歌曲播放"的Demo涵盖了Android文件操作、UI设计、媒体播放、服务以及权限管理等多个关键知识点,是学习Android应用开发过程中不可或缺的一部分。通过对这个Demo的深入理解...

    android SD卡文件浏览器

    在Android操作系统中,SD卡作为扩展存储空间,常常存储着大量的用户数据,包括照片、音乐、文档等。为了方便用户管理和访问这些文件,Android SD卡文件浏览器应运而生。本文将深入探讨这一主题,包括其工作原理、...

    android sd卡文件浏览

    在Android平台上,对SD卡文件进行浏览是一项常见的需求,尤其对于开发者来说,这涉及到文件系统的交互和用户界面的实现。Android系统提供了丰富的API接口来访问和操作文件,包括SD卡上的文件。以下将详细讲解如何...

    android遍历sd卡视频文件

    在Android平台上,遍历SD卡中的视频文件是开发视频播放器等应用的常见需求。这个过程涉及到了文件系统的操作、多媒体信息的获取以及性能优化等多个方面。以下将详细讲解这个主题。 首先,Android系统提供了`java.io...

    Android-文件夹的创建将raw中文件放到SD卡中将assets中文件保存到SD卡中压缩包的解压文件的删除功能.zip

    在Android开发中,有时我们需要对文件进行...以上就是Android中创建文件夹、将`raw`和`assets`目录中的文件保存到SD卡、解压缩文件以及删除文件的基本操作。在实际应用中,还需要考虑异常处理、权限管理等细节问题。

Global site tag (gtag.js) - Google Analytics