main.xml代码如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<TableLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >

<TableRow>

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="请输入要搜索的关键字:" />

<EditText
android:id="@+id/edit"
android:layout_width="120px"
android:layout_height="wrap_content" />
</TableRow>
</TableLayout>

<Button
android:id="@+id/btn_search"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="搜索" />

<TextView
android:id="@+id/info"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />

</LinearLayout>

.java程序如下:

package org.lxh.demo;

import java.io.File;

import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnFocusChangeListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class Hello extends Activity {
private Button search = null;
private TextView info = null;
private EditText edit = null;

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); // 生命周期方法
super.setContentView(R.layout.main); // 设置要使用的布局管理器
this.edit = (EditText) super.findViewById(R.id.edit);
this.info = (TextView) super.findViewById(R.id.info);
this.search = (Button) super.findViewById(R.id.btn_search);
this.search.setOnClickListener(new OnClick());

}

private class OnClick implements OnClickListener {

public void onClick(View arg0) {
String keyWords = Hello.this.edit.getText().toString();
if (keyWords.equals("")) {
Hello.this.info.setText("请输入关键字!");
} else {
Hello.this.info.setText(searchFile(keyWords));
}

}

private CharSequence searchFile(String keyWords) {
String result = "";
File[] files = new File("/").listFiles();//获取所有文件
for (File f : files) {
if (f.getName().indexOf(keyWords) >= 0) {//文件名匹配
result += f.getPath() + "\n";
}
}
if (result.equals("")) {
result = "找不到文件!";
}
return result;
}

}
}


运行如下:

Android--快速地搜索手机文件引擎小程序(File I/O)_android