- 浏览: 7944563 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (2425)
- 软件工程 (75)
- JAVA相关 (662)
- ajax/web相关 (351)
- 数据库相关/oracle (218)
- PHP (147)
- UNIX/LINUX/FREEBSD/solaris (118)
- 音乐探讨 (1)
- 闲话 (11)
- 网络安全等 (21)
- .NET (153)
- ROR和GOG (10)
- [网站分类]4.其他技术区 (181)
- 算法等 (7)
- [随笔分类]SOA (8)
- 收藏区 (71)
- 金融证券 (4)
- [网站分类]5.企业信息化 (3)
- c&c++学习 (1)
- 读书区 (11)
- 其它 (10)
- 收藏夹 (1)
- 设计模式 (1)
- FLEX (14)
- Android (98)
- 软件工程心理学系列 (4)
- HTML5 (6)
- C/C++ (0)
- 数据结构 (0)
- 书评 (3)
- python (17)
- NOSQL (10)
- MYSQL (85)
- java之各类测试 (18)
- nodejs (1)
- JAVA (1)
- neo4j (3)
- VUE (4)
- docker相关 (1)
最新评论
-
xiaobadi:
jacky~~~~~~~~~
推荐两个不错的mybatis GUI生成工具 -
masuweng:
(转)JAVA获得机器码的实现 -
albert0707:
有些扩展名为null
java 7中可以判断文件的contenttype了 -
albert0707:
非常感谢!!!!!!!!!
java 7中可以判断文件的contenttype了 -
zhangle:
https://zhuban.me竹板共享 - 高效便捷的文档 ...
一个不错的网络白板工具
这里小结下,如何用android的模拟器去创建一个sdcard,并且学习如何在android中去下载
一个网上的文件,保存到android,并且下载时,会显示一个进度条
1 页面结构,提供一个button,点BUTTON时,去下载一个图片,main.xml设计如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
<Button
android:text="Start long running task.."
android:id="@+id/startBtn"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
</Button>
</LinearLayout>
2 主程序
package com.liao;
import java.io.BufferedInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URL;
import java.net.URLConnection;
import android.app.Activity;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.os.AsyncTask;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class AndroAsync extends Activity {
public static final int DIALOG_DOWNLOAD_PROGRESS = 0;
private Button startBtn;
private ProgressDialog mProgressDialog;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
startBtn = (Button)findViewById(R.id.startBtn);
startBtn.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
startDownload();
}
});
}
private void startDownload() {
String url = "http://image-
7.verycd.com/0d7596f5db7df1742236466dc91311b1435702(120x120)/thumb.jpg";
new DownloadFileAsync().execute(url);
}
@Override
protected Dialog onCreateDialog(int id) {
switch (id) {
case DIALOG_DOWNLOAD_PROGRESS:
mProgressDialog = new ProgressDialog(this);
mProgressDialog.setMessage("Downloading file..");
mProgressDialog.setProgressStyle
(ProgressDialog.STYLE_HORIZONTAL);
mProgressDialog.setCancelable(false);
mProgressDialog.show();
return mProgressDialog;
default:
return null;
}
}
class DownloadFileAsync extends AsyncTask<String, String, String> {
@Override
protected void onPreExecute() {
super.onPreExecute();
showDialog(DIALOG_DOWNLOAD_PROGRESS);
}
@Override
protected String doInBackground(String... aurl) {
int count;
try {
URL url = new URL(aurl[0]);
URLConnection conexion = url.openConnection();
conexion.connect();
int lenghtOfFile = conexion.getContentLength();
Log.d("ANDRO_ASYNC", "Lenght of file: " + lenghtOfFile);
InputStream input = new BufferedInputStream(url.openStream());
OutputStream output = new FileOutputStream
("/sdcard/picture.jpg");
byte data[] = new byte[1024];
long total = 0;
while ((count = input.read(data)) != -1) {
total += count;
publishProgress(""+(int)((total*100)/lenghtOfFile));
output.write(data, 0, count);
}
output.flush();
output.close();
input.close();
} catch (Exception e) {
Log.e("error",e.getMessage().toString());
System.out.println(e.getMessage().toString());
}
return null;
}
protected void onProgressUpdate(String... progress) {
Log.d("ANDRO_ASYNC",progress[0]);
mProgressDialog.setProgress(Integer.parseInt(progress[0]));
}
@Override
protected void onPostExecute(String unused) {
dismissDialog(DIALOG_DOWNLOAD_PROGRESS);
}
}
}
注意这里,在startdownload 方法中,调用了DownloadFileAsync内部类,这个内部类充
分利用了AsyncTask的异步工作特性,是很方便的,其中注意doInBackground(这个阶段下
载图片),onProgressUpdate是让进度条完成后消失。
最后,要记得在androidmanifest.xml中的</application>后加入
<uses-permission android:name="android.permission.INTERNET" />
让能有访问互联网的能力
3 下面讲解下其中如何用到的,把图片保存到sdcard中去,由于是模拟器,因此
只能在磁盘上模拟一个IMG文件来充当模拟,步骤如下:
1) 打开cmd,进入Android SDK安装路径下的tools目录下,输入如下命令:
mksdcard 1024M sdcard.img
该命令会在当前目录下生成一个sdcard.img文件,该文件是Android模拟器的SD卡镜像文件
。1024M表示SD卡有1024M大小,即1G容量。目前Android支持8M~128G的SD卡。
2) 运行带sdcard的模拟器
A 在cmd中启动带有sdcard的模拟器
进入Android SDK安装路径下的tools目录中,运行下面命令:
emulator -avd name_avd -sdcard sdcard.img
其中,name_avd是已有的模拟器的名字,sdcard.img是第一步创建的SD卡镜像文件。
B 在eclipse中,新建模拟器的时候,指定SD卡镜像文件的路径,并且加入对SD卡的支持选项
打开eclipse,进入:window->android SDK and AVD manager,
然后在create avd的时候,在SD CARD中选择"FILE",然后再选择sd support;
3)如何看SDCARD中的文件
1)在cmd中,进入Android SDK的安装路径下的tools目录中,运行命令:
adb push E:\abc.jpg sdcard/abc.jpg
其中,E:\test.3gp 是本地要上传的文件,sdcard/abc.jpg 为上传到SD卡中的路径。
注意:adb push 电脑路径 模拟器路径
在电脑路径中,必须使用“\”,在模拟器路径中必须使用“/”,并且模拟器的根路径是只
读的。
2 ) 在eclipse环境中
在设置了RUN的命令参数后,RUN一个应用程序,然后使用DDMS的File Explorer工具导入导出文
件。打开DDMS工具,在eclipse的windows->Open Perspective->Other...里面打开DDMS工具,在
DDMS工具的File Explorer标签里面选择sdcard目录导入导出文件,
一个网上的文件,保存到android,并且下载时,会显示一个进度条
1 页面结构,提供一个button,点BUTTON时,去下载一个图片,main.xml设计如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
<Button
android:text="Start long running task.."
android:id="@+id/startBtn"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
</Button>
</LinearLayout>
2 主程序
package com.liao;
import java.io.BufferedInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URL;
import java.net.URLConnection;
import android.app.Activity;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.os.AsyncTask;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class AndroAsync extends Activity {
public static final int DIALOG_DOWNLOAD_PROGRESS = 0;
private Button startBtn;
private ProgressDialog mProgressDialog;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
startBtn = (Button)findViewById(R.id.startBtn);
startBtn.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
startDownload();
}
});
}
private void startDownload() {
String url = "http://image-
7.verycd.com/0d7596f5db7df1742236466dc91311b1435702(120x120)/thumb.jpg";
new DownloadFileAsync().execute(url);
}
@Override
protected Dialog onCreateDialog(int id) {
switch (id) {
case DIALOG_DOWNLOAD_PROGRESS:
mProgressDialog = new ProgressDialog(this);
mProgressDialog.setMessage("Downloading file..");
mProgressDialog.setProgressStyle
(ProgressDialog.STYLE_HORIZONTAL);
mProgressDialog.setCancelable(false);
mProgressDialog.show();
return mProgressDialog;
default:
return null;
}
}
class DownloadFileAsync extends AsyncTask<String, String, String> {
@Override
protected void onPreExecute() {
super.onPreExecute();
showDialog(DIALOG_DOWNLOAD_PROGRESS);
}
@Override
protected String doInBackground(String... aurl) {
int count;
try {
URL url = new URL(aurl[0]);
URLConnection conexion = url.openConnection();
conexion.connect();
int lenghtOfFile = conexion.getContentLength();
Log.d("ANDRO_ASYNC", "Lenght of file: " + lenghtOfFile);
InputStream input = new BufferedInputStream(url.openStream());
OutputStream output = new FileOutputStream
("/sdcard/picture.jpg");
byte data[] = new byte[1024];
long total = 0;
while ((count = input.read(data)) != -1) {
total += count;
publishProgress(""+(int)((total*100)/lenghtOfFile));
output.write(data, 0, count);
}
output.flush();
output.close();
input.close();
} catch (Exception e) {
Log.e("error",e.getMessage().toString());
System.out.println(e.getMessage().toString());
}
return null;
}
protected void onProgressUpdate(String... progress) {
Log.d("ANDRO_ASYNC",progress[0]);
mProgressDialog.setProgress(Integer.parseInt(progress[0]));
}
@Override
protected void onPostExecute(String unused) {
dismissDialog(DIALOG_DOWNLOAD_PROGRESS);
}
}
}
注意这里,在startdownload 方法中,调用了DownloadFileAsync内部类,这个内部类充
分利用了AsyncTask的异步工作特性,是很方便的,其中注意doInBackground(这个阶段下
载图片),onProgressUpdate是让进度条完成后消失。
最后,要记得在androidmanifest.xml中的</application>后加入
<uses-permission android:name="android.permission.INTERNET" />
让能有访问互联网的能力
3 下面讲解下其中如何用到的,把图片保存到sdcard中去,由于是模拟器,因此
只能在磁盘上模拟一个IMG文件来充当模拟,步骤如下:
1) 打开cmd,进入Android SDK安装路径下的tools目录下,输入如下命令:
mksdcard 1024M sdcard.img
该命令会在当前目录下生成一个sdcard.img文件,该文件是Android模拟器的SD卡镜像文件
。1024M表示SD卡有1024M大小,即1G容量。目前Android支持8M~128G的SD卡。
2) 运行带sdcard的模拟器
A 在cmd中启动带有sdcard的模拟器
进入Android SDK安装路径下的tools目录中,运行下面命令:
emulator -avd name_avd -sdcard sdcard.img
其中,name_avd是已有的模拟器的名字,sdcard.img是第一步创建的SD卡镜像文件。
B 在eclipse中,新建模拟器的时候,指定SD卡镜像文件的路径,并且加入对SD卡的支持选项
打开eclipse,进入:window->android SDK and AVD manager,
然后在create avd的时候,在SD CARD中选择"FILE",然后再选择sd support;
3)如何看SDCARD中的文件
1)在cmd中,进入Android SDK的安装路径下的tools目录中,运行命令:
adb push E:\abc.jpg sdcard/abc.jpg
其中,E:\test.3gp 是本地要上传的文件,sdcard/abc.jpg 为上传到SD卡中的路径。
注意:adb push 电脑路径 模拟器路径
在电脑路径中,必须使用“\”,在模拟器路径中必须使用“/”,并且模拟器的根路径是只
读的。
2 ) 在eclipse环境中
在设置了RUN的命令参数后,RUN一个应用程序,然后使用DDMS的File Explorer工具导入导出文
件。打开DDMS工具,在eclipse的windows->Open Perspective->Other...里面打开DDMS工具,在
DDMS工具的File Explorer标签里面选择sdcard目录导入导出文件,
发表评论
-
『Google发布移动Web性能工具PCAP Web Performance Analyzer』
2015-01-06 14:17 2241http://t.cn/RZcCwZS 最近,Google的 ... -
(收藏)在WebView中如何让JS与Java安全地互相调用
2014-11-11 09:59 873在WebView中如何让JS与Java安全地互相调用 http ... -
android中的两端对齐
2013-02-08 18:58 3152在android中的webview中,可以对文本内容进行对 ... -
jQuery Mobile十大常用技巧
2012-10-12 07:23 4277原文发表在: http://mobile.51cto.com/ ... -
Android中使用log4j
2012-10-09 20:22 18336如果要直接在android工程中使用log4j,是有点问题 ... -
收集android的三个小tip
2012-08-25 11:24 2151收集android的三个小tip 1)Android 开发中 ... -
andorid中的html.fromhtml方法
2012-08-19 21:24 8852在android中,有一个容易遗忘的Html.fromht ... -
一个不错的sencha touch MVC教程分享
2012-08-18 10:06 2872http://blog.csdn.net/fyq891014/ ... -
jquery mobile中的按钮大集合
2012-08-14 22:17 3940本文小结了jquery mobile ... -
Andrid中的plurals
2012-08-10 19:29 1759在Android中的字符串资源中,今天留意到一个很特别的东 ... -
Android中listview中的button
2012-08-08 12:56 1985在androd中的listview中,假如每一项是个buu ... -
如何有更好的Android应用创意--从一款新Android应用说起
2012-07-20 14:23 5721现在这个年头,Android ... -
android中判断网络是否连接
2012-07-12 23:19 2942在android中,如何监测网络的状态呢,这个有的时候也是十分 ... -
android中设置手机的语言系
2012-05-19 15:55 2762adb shell 进入Android的Shell,输入以下命 ... -
android 按钮设计中state_selected属性
2012-05-15 22:33 8512在android中,如果搞几个tab,然后想做到当移动到某个T ... -
android中从图库中选取图片
2012-05-11 21:03 10289在android中,如何从图库gallary中挑选图片呢, ... -
android 模拟器中启用相机API支持
2012-05-10 22:37 3190android 模拟器中启用相机支持,否则如果应用中用到相关的 ... -
(转)向android模拟器打电话发短信的简单方法
2012-04-13 13:00 2005http://blog.csdn.net/pku_androi ... -
android 中让activity全屏幕显示
2012-04-12 09:06 1688android 中让activity全屏幕显示,这是一个小ti ... -
在Android中加入GOOGLE统计系统
2012-03-31 20:43 3467Google的统计分析系统,不仅在传统WEB统计中应用很广 ...
相关推荐
预置一些文件到系统sdcard目录
而“android webview实现自身下载文件自动保存SDCARD”这个话题则涉及到如何在WebView中处理文件下载,并且让这些文件自动保存到设备的外部存储(通常是SDCARD)中,而且整个过程对用户来说是透明的,即静默下载。...
本教程将详细解释如何在Android中读写SDCard文件,非常适合初学者入门。 首先,了解Android的存储系统至关重要。Android设备通常有两种存储方式:内部存储和外部存储(即SDCard)。内部存储空间有限,而外部存储...
在给定的压缩包中,"文件存储到SDCard和单元测试代码"文件应该包含了以上所述的存储操作和对应的单元测试用例。通过分析和运行这些代码,开发者可以更好地理解Android应用如何管理和测试文件存储操作。在实际开发中...
压缩包中的资源可能包含示例代码,用于演示如何在Android应用中实现内部存储和SDCard存储的文件操作,包括创建、读取、写入和删除文件。通过阅读和理解这些代码,开发者可以更好地掌握Android文件存储的实践技巧。 ...
在Android平台上,将图片从互联网下载到用户的外部存储(通常称为SDcard)是常见的需求,例如在应用中加载网络头像、壁纸或者其他图像资源。这个过程涉及到网络请求、数据流处理以及文件操作等多个方面。接下来,...
通过以上方法,开发者可以有效地在Android 2.3及其后续版本中获取和管理内存目录和SDCard目录,为用户提供安全、便捷的文件存储服务。在实际开发中,还需关注Android系统的更新和最佳实践,以保持代码的兼容性和效率...
其中SD卡(Secure Digital Card,简称SDCard)在Android设备中主要用作存储扩展,它可以用来存放各种数据文件,比如图片、音乐和视频等。在Android模拟器中模拟SD卡的使用主要包含以下几个方面知识点: 首先,了解...
代码如下:// 读取sdcard文件private void sdcardRead(){String fileName = “/sdcard/my_sdcard.txt”;// assets下文件//String fileName = “/sdcard/test/my_sdcard_test.txt”;// sdcard下子目录文件String ret =...
android应用开发中关于SDCard读写操作的实例代码,在下载学习SDCard操作中,碰到很棘手的问题了。不过最后还在我的坚持下成功了,
`sdcard.img`文件是Android模拟器中代表SD卡的镜像文件,它包含了模拟器SD卡的所有数据。下面我们将详细探讨如何处理这个文件以及相关的工具。 1. **理解sdcard.img文件** `sdcard.img`是一个二进制文件,它模拟了...
在Android开发中,将网络上的图片下载到SDCard并显示是一项常见的需求。这个源码示例提供了一种方法来实现这一功能。以下是基于标题和描述的相关知识点详解: 1. **Android权限管理**: 在Android中,访问SDCard...
// suffix:需要选择的文件后缀,比如需要选择wav、mp3文件的时候设置为".wav;.mp3;",注意最后需要一个分号(;) // images:用来根据后缀显示的图标资源ID。 // 根目录图标的索引为sRoot; // 父目录的索引为...
接下来,我们讨论如何在Android中读取和写入SDCard文件。以下是一个简单的示例: **写入文件:** ```java // 获取外部存储根目录 String externalStorageDirectory = Environment.getExternalStorageDirectory()....
在Android系统中,APK(Android Package)是应用程序的安装包,用户通常通过Google Play或其他第三方应用商店下载这些APK文件来安装应用。然而,默认情况下,Android设备会将APK安装到内部存储器中,这可能导致内存...
在Android系统中,将中文文件镜像上传到SD卡是一个常见的需求,特别是在处理系统更新、应用安装或数据备份时。本文将深入探讨如何在Android设备上实现这一操作,重点介绍与"android"、"镜像"、"中文"以及"UltraISO...
在Android系统中,外置SDCard(也称为外部存储)是设备上用于扩展存储空间的区域,用户可以在这个空间上存储各种数据,如媒体文件、应用程序数据等。本篇文章将详细探讨如何在Android应用中实现对外置SDCard的读取、...
### Android中SDCard的读写操作详解 ...通过以上介绍,我们可以了解到在Android开发中如何有效地对SDCard进行读写操作。正确地使用这些技术可以帮助开发者更好地管理应用的数据存储,提升用户体验。
在Android平台上,对SDCard(外部存储)进行文件读写是常见的操作,尤其对于需要存储用户数据或资源的应用来说更是必不可少。本实例将探讨如何在Android应用中实现SdCard的读写功能。 首先,我们需要了解Android对...
在Android平台上,开发一款应用来实现从SDCard中读取TXT文件并展示为翻书效果,需要涉及到多个技术层面。以下将详细介绍这个过程中的关键知识点: 1. **Android权限管理**: 在Android中,访问外部存储(如SDCard...