搜索一个目录下名字中有key的目录和文件
2013-09-13 17:19
211 查看
1,注释部分为搜索当前的文件夹
package irdc.ex04_11; /* import相关class */ import java.io.File; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; public class EX04_11 extends Activity { /* 声明对象变量 */ private static final String TAG = "EX04_11"; private Button mButton; //private Button mButton2; private EditText mKeyword; private TextView mResult; String result; File file; File[] files = null; /** 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); //mButton2 = (Button) findViewById(R.id.mButton2); mResult = (TextView) findViewById(R.id.mResult); /* 将mButton加入onClickListener */ result = ""; file = new File("/mnt"); mButton.setOnClickListener(new Button.OnClickListener() { public void onClick(View v) { /* 取得输入的关键词 */ if(mButton.getText().toString().equals(getString(R.string.str_button))){ String keyword = mKeyword.getText().toString(); if (keyword.equals("")) { mResult.setText("请勿输入空白的关键词!!"); } else { mButton.setText(getString(R.string.str_button2).toString()); Log.i(TAG,"str_button2 " + mButton.getText()); mResult.setText(searchFile2(file,keyword)); } } else{ android.os.Process.killProcess(android.os.Process.myPid()); } mButton.setText(getString(R.string.str_button)); } }); /*mButton2.setOnClickListener(new Button.OnClickListener(){ @Override public void onClick(View v) { //Log.i(TAG,"mypid " + android.os.Process.myPid()); android.os.Process.killProcess(android.os.Process.myPid()); //mButton2.setEnabled(false); mButton.setEnabled(true); }});*/ } /* 搜索文件的method */ /* private String searchFile(String keyword) { String result = ""; File[] files = new File("/").listFiles(); for (File f : files) { if(f.isDirectory()){ Log.i(TAG,"f.getPath() " + f.getPath()); //searchFile(f.getPath()); } if (f.getName().indexOf(keyword) >= 0) { result += f.getPath() + "\n"; } } if (result.equals("")) result = "找不到文件!!"; return result; }*/ private String searchFile2(File path,String keyword) { //Log.i(TAG,"mypid1 " + android.os.Process.myPid()); if(path.canRead()){ files = path.listFiles(); //Log.i(TAG,"files " + files); for (File f : files) { if (f.getName().indexOf(keyword) >= 0) { result += f.getPath() + "\n"; //Log.i(TAG,"result " + result); } if(f.isDirectory()){ //Log.i(TAG,"f.getPath() " + f.getPath()); searchFile2(f,keyword); } if (result.equals("")) result = "找不到文件!!"; } } return result; } }
相关文章推荐
- 搜索和替换文件或目录的一个好类--很实用
- VB.Net程序设计:一个单独的线程-BackgroundWorker例子。搜索目录下的文件。
- 采用多线程和生产者消费者模式来实现对于一个目录以及所有子目录下的文件内容的搜索,打印出包含指定关键字的行.
- 显示一个目录下多个文件内容及文件名字
- 【练习题】 使用程序建立一个多级的目录,在每个目录下,新建一个和目录名字一样的txt文件,并写入1990
- 一个emacs扩展,从指定目录或文件中搜索指定关键字
- 搜索和替换文件或目录的一个好类--很实用
- Jsoup学习笔记8:Jsoup 解析指定目录中的saz文件,生成一个名字相同的htm文件,将解析结果写入csv文件中
- Go 1.5关键字搜索目录、文件、文件内容_修复一个小BUG
- 搜索指定目录下的指定后缀名字的所有文件的内容
- [Shell]在一个目录及其子目录内的指定类型的文件中搜索某个字符串
- java改变某一个目录下的文件名字
- linux系统,面对一大堆目录,我想找一个文件,知道文件的名字,但是不知道在哪个目录下,怎么办
- 一个在DOS下处理中文和长名字目录和文件的程序(原创)
- 搜索和替换文件或目录的一个好类--很实用
- linux下将一个目录下的所有文件拷贝到另一个大文件中,并把大文件拆分成原来的小文件,大小,内容,名字不变
- 修改一个目录下所有文件的名字
- 这是一个定时脚本,主要功能是遍历该文件夹下的所有文件并存储到数组,对数据中的文件进行操作,一个一个移动到指定的目录下,并删除原有文件
- 目录下指定类型的文件复制到另外一个目录
- linux中在某个目录下多个文件中搜索关键字