1. 范例说明
大家都应该用过操作系统的文件搜索功能吧!它可以快速协助我们找到想要的文件。如果要在手机制作一个文件搜索功能,又该如何实现呢?其实这个功能并不难,Java I/O的API中提供了Java.io.File对象,只要利用File对象的方法,再搭配Android的EditText、TextView等对象,就可以轻松做出一个简单的手机文件搜索引擎。
该范例中使用EditText、Button和TextView3种对象来实现此功能,用户将要搜索的文件名字或关键字输入到EditText中,单击Button后,程序会在根目录中寻找符合的文件,并将搜索结果显示于TextView中,如果找不到符合的文件,则显示“找不到文件”。
2. 运行结果
3. 编写代码
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); /* 载入main.xml Layout */
setContentView(R.layout.main); /* 初始化对象 */
mKeyword = (EditText) findViewById(R.id.mKeyword);
mButton = (Button) findViewById(R.id.mButton);
mResult = (TextView) findViewById(R.id.mResult); /* 将mButton加入onClickListener */
mButton.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) { /* 取得输入的关键词 */
String keyword = mKeyword.getText().toString();
if (keyword.equals("")) {
mResult.setText("请勿输入空白的关键词!!");
} else {
mResult.setText(searchFile(keyword));
}
}
});
} /* 搜索文件的method */
private String searchFile(String keyword) {
String result = "";
File[] files = new File("/").listFiles();
for (File f : files) {
if (f.getName().indexOf(keyword) >= 0) {
result += f.getPath() + "\n";
}
}
if (result.equals(""))
result = "找不到文件!!";
return result;
}
4. 扩展学习与作业
该范例只是搜索的根目录下的文件或文件夹,如果要搜索所有的文件,则需要使用File.isDirectory()一层一层搜索下去。
Android 文件操作大全
http://www.eyeandroid.com/thread-10157-1-1.html
5.视频讲解
http://www.eyeandroid.com/thread-10761-1-1.html

- 大小: 35.8 KB
分享到:
相关推荐
在Java Web开发中,文件的上传与下载是常见的功能需求,尤其在构建动态网站或Web应用程序时。本教程将深入讲解如何使用Java Servlet、Apache Commons IO库(版本2.4)以及Apache Commons FileUpload库(版本1.3)来...
c3p0依赖包mchange-commons-java-0.2.19.jar; 特别说明:c3p0(c3p0-0.9.5.5.bin.tgz)的lib包里面含此mchange-commons-java-0.2.19.jar文件。
它提供了全面的代码编辑、调试、构建、性能优化等功能,支持各种Android平台和设备,帮助开发者高效地创建高质量的应用程序。 二、版本信息 “android-studio-2021.3.1.17-windows.exe”是Android Studio的Dolphin...
MySQL是世界上最受欢迎的开源数据库系统之一,而MySQL Connector/J则是MySQL官方提供的用于Java应用程序的JDBC(Java Database Connectivity)驱动程序。"mysql-connector-java-8.0.21.zip"是一个包含MySQL ...
在Java开发中,上传文件是一项常见的任务,而`commons-fileupload-1.3.3.jar`和`commons-io-2.6.jar`是Apache Commons项目中的两个重要库,专门用于处理HTTP请求中的文件上传功能。这两个库为开发者提供了便捷、高效...
标题 "aspose-words-20.2-android.via.java.zip" 暗示这是一个针对Android平台的Java库,用于处理Microsoft Word文档并将其转换为PDF格式。Aspose.Words是Aspose公司提供的一个强大的文档处理组件,它允许开发者在...
Apache Commons IO 是一个Java库,专门用于处理输入/输出(I/O)操作。这个库提供了大量的实用工具类,简化了常见的文件、流、过滤器、读写操作等任务。"commons-io-2.11.0.rar"是Apache Commons IO库的版本2.11.0的...
Android.bp 文件首先是 Android 系统的一种编译配置文件,是用来代替原来的 Android.mk 文件的。在 Android7.0 以前,Android 都是使用 make 来组织各模块的编译,对应的编译 配置文件就是 Android.mk。在 Android...
MySQL Connector/J是MySQL数据库系统与Java应用程序之间的重要桥梁,它是一个实现了JDBC(Java Database Connectivity)规范的驱动程序,使得Java开发者能够通过编写Java代码来访问、操作MySQL数据库。在这个特定的...
mysql驱动包 mysql-connector-java-5.1.13-bin.jar 方便快捷获取。。。
这个库提供了一系列与输入输出操作相关的实用工具类,极大地简化了Java程序员处理IO任务的复杂性。标题提到的"commons-io-2.4.jar"是这个库的一个版本,版本号为2.4,表明它是官方发布的稳定版本,对先前版本进行了...
本文将详细介绍一个Java程序中的功能模块——如何实现目录多文件上传,并利用Java IO流进行文件复制操作。该功能可以实现在用户选择一个目录后,自动扫描并上传该目录下的所有文件及其子文件夹,最终达到完整备份或...
新建一个servlet: FileUpload.java用于文件上传: package com.drp.util.servlet; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet....
Android Studio是谷歌官方推出的专为Android应用开发设计的集成开发环境(IDE),它提供了全方位的工具集,帮助开发者高效地构建、调试和发布应用程序。此版本为2020.3.1.26,专为Windows操作系统优化,确保在...
其次,`commons-io-1.3.2.jar`是Apache Commons IO库的一部分,这是一个通用的IO(Input/Output)操作工具集,为Java开发者提供了大量实用的IO操作方法。在处理文件上传时,`commons-fileupload`可能会依赖`commons-...
Apache Commons FileUpload与Apache Commons IO是Java开发中用于处理文件上传功能的重要库。这两个库在Web应用程序中尤其常见,因为它们提供了处理HTTP请求中的多部分数据(如表单上传的文件)的便捷方法。 `...
在“graalvm-ce-java8-linux-amd64-21.0.0.2.tar.gz”这个文件中,我们看到的是GraalVM社区版(Community Edition)针对Java 8、Linux操作系统和AMD64架构的一个特定版本。 1. **GraalVM的核心特点**: - **多语言...
mysql-connector-java-5.1.42-bin.jar 官网下载的驱动
t-io是一个高性能、轻量级的网络通信框架,专为处理高并发、低延迟的网络应用场景而设计。其v3.8.5版本是该框架的一个重要里程碑,提供了更稳定、更高效的网络通信解决方案。在毕业设计论文或计算机案例研究中,t-io...
### Android Studio Chipmunk 版本介绍 #### 一、概览 Android Studio Chipmunk 是 Android 开发者工具的一个重要版本,它属于 2021.2.1 版本系列,针对 macOS 平台上的 Intel 芯片系统进行了优化。此版本为 ...